![]() |
Модераторы: PILOT, ManiaK, Mazzi |
![]() ![]() ![]() |
|
Deliverance |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 52 Регистрация: 2.12.2007 Где: Украина,Донецк Репутация: нет Всего: нет |
Нужна помощь досталась ,от предшествиника, плата с котроллером Atmega8535. Плата проектировалась для управления пресса в режимах:
а)Наладка б)Делительная головка (управление ШД) в)Ручной г)От педали(ножной) Суть проблеммы. ШД управляеться посредством L297 и двух L6203. Шаговый двигатель ШДР-56 на 6-ть выводов.Подключен на 4-е.Работает через раз.Раз работает нормально,а раз стоит и не вращаеться. Программа управления написана на СИ . Прошита через AVR CodeVIsion Двигатель работает в шаговом режиме,хотя на микросхеме L297 ,судя по DataSheet, установлен полушаговый режим Half. Очень большая просьба помогитье. |
|||
|
||||
xvr |
|
||||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 8 Всего: 223 |
Давай схему платы и программу, а то штатные телепаты все в отпусках ![]() |
||||
|
|||||
Deliverance |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 52 Регистрация: 2.12.2007 Где: Украина,Донецк Репутация: нет Всего: нет |
Вот прога
Добавлено @ 10:11 А схема не грузиться.нарисована в пикаде( Отправил на маил. Сорь ,на тот исходник Вот тот что нужен Это сообщение отредактировал(а) Deliverance - 22.1.2008, 10:45 Присоединённый файл ( Кол-во скачиваний: 29 ) ![]() |
|||
|
||||
xvr |
|
||||||||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 8 Всего: 223 |
Пока не пришло ![]()
При беглом взгляде на исходник (насколько я понял у тебя step ШД подключен к PORTB.4) я заметил вот это:
И дальнейшую работу с M1 для простого включения и выключения двигателя, что не согласуется с
Ты уж определись что и куда у тебя подключено ![]() |
||||||||
|
|||||||||
Deliverance |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 52 Регистрация: 2.12.2007 Где: Украина,Донецк Репутация: нет Всего: нет |
||||
|
||||
Deliverance |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 52 Регистрация: 2.12.2007 Где: Украина,Донецк Репутация: нет Всего: нет |
После подачи питания на плату
МК запускает подпрограмму SelectMode Выбираем режим DG Потом запускается подпрограмма SelectPaz Потом InitReduktor Вот тут и начинаются траблы(( Пробовал запустить только TestReduktor работает нормально(писалось спецом для для проверки датчиков холла) А вот инит рдуктор не работае,один раз проходит пишет ,что шаги не совпадают и все,больше ни шагу движок не делает.даже после перевключения только мычит и всё |
|||
|
||||
xvr |
|
||||||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 8 Всего: 223 |
В первый раз шагает нормально?
PS. Схема так и не пришла. |
||||||
|
|||||||
Deliverance |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 52 Регистрация: 2.12.2007 Где: Украина,Донецк Репутация: нет Всего: нет |
204 шага,а почему за цикливаеться?
Не после сброса питания ,всё также ,тока когда до инит редуктора доходит начинает сразу мычать( Это сообщение отредактировал(а) Deliverance - 22.1.2008, 14:06 |
|||
|
||||
xvr |
|
||||||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 8 Всего: 223 |
У тебя там есть такой код
Если программа попадает в if, что у тебя и происходит, то она циклится в while (Exit==0), т.к. тело цикла у тебя пустое, а переменная Exit так и останется в нуле. Судя по тому, что число шагов сильно отличается от требуемого, то неправильна либо логика работы с датчиками хола либо где то механическая неисправность. Как должны работать эти датчики?
Это странно, как минимум 400 шагов он должен был сделать. А импульсы на ШД вообще выдаются? Может остался включенным какой нибудь тормоз или муфта? |
||||||
|
|||||||
Deliverance |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 52 Регистрация: 2.12.2007 Где: Украина,Донецк Репутация: нет Всего: нет |
9802 - это шаги ШД,которые он делает за полный оборот заготовки, 204- это шаги ШД за один оборот вала ШД ,Редуктор 1:48,отсюда и все цифры,посмотри ,а нужен там вообще этот while? Датчики работают так,один отлеживает кол-во оборотов вала ШД,а второй оборотов Заготовки ,т.е. стоит ,грубо говоря, на валу редуктора.
Процедура Init_Reduktor подразумевает следующее: поверяються датчики холла (в каком положении находяться). Должны оба прийти в 0, Пока они не пришли выполняеться процедура Step. Когда пришли,выполняеться инициализация. Я так понимаю For a=0; a<200; a++; Для того чтоб сдвинуть с нулевой точки.Следовательно редуктор должен сделать не больше однг8о полного круга,потом второй раз здвигаем датчик на 200 шагов,но при этом шаги уже считаем и считаем до того момента пока не придем в 0 датчиком редуктора,потом сравниваем кол-во шагов и если не совпали.то выводим "плохой редуктор". А совпали идём дальше Добавлено через 2 минуты и 55 секунд Вот так должно работать,а не хочет(( Муфт нет ,тормозить может тока электроникой.ну и если клина поймает редуктор.но на проверке ДХ работает же ! Не клинит! Ещё раз кинул схему на маил. Кидал непосредственно с маил ру. |
|||
|
||||
xvr |
|
||||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 8 Всего: 223 |
У тебя в 2х while'ах (стр 291 и 310) противоречивые условия - они должны быть одинаковыми. При срабатывании датчики выдают 0, я правильно понял? Тогда условие нужно записать так ( !(DH1==0 && DH2==0) ) Отбой, условия у тебя одинаковые, хотя и записаны по разному ![]() Остается предположение, что датчик с вала редуктора не успевает снять 0 за один оборот вала ШД (люфт или зона срабатывания датчика слишком большая). NB. А while лучше написать как while(DH1 || DH2)
Это сообщение отредактировал(а) xvr - 22.1.2008, 16:30 |
||||
|
|||||
Deliverance |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 52 Регистрация: 2.12.2007 Где: Украина,Донецк Репутация: нет Всего: нет |
Условия и так и так пробовал,работает,суть в том ,что редуктор сфолочь клинит((( Движок не может сорвать.вот почему не включался второй раз. без кострукции (отдельно тока ШД) работает. Вопрос по поводу шагового и полушагового режима остался открытым. Уменя ШД с 6-ю выводами,два средних по схеме должны быть "-" А у меня тупо они откинуты,непойму почему.Спасибо за помошь,оч помог!
Просьба, завтра если что,помочь. А вообще былоб удобнее в аське,моя есть твою не знаю. Добавлено через 2 минуты и 10 секунд Да и ещё Когда пытаюсь сдержать ШД (рукой за вал) Чувствую что проскакивает.как избежать проскакивания? |
|||
|
||||
xvr |
|
||||||||||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 8 Всего: 223 |
Люфт в редукторе или ШД не тянет редуктор? Если первое - то увеличь количество шагов для ухода с 0 (сделай на несколько полных оборотов вала ШД), если второе - то труба :(
Посмотрю схему, как доберусь до дома
Судя по всему движок расчитан под униполярное включение, а драйвер - под биполярное. Должно работать, но момент на валу упадет
Аськи нет, увы.
Мал момент. Варианты: 1) Увеличить напряжение питания 2) Перейти на полный шаг |
||||||||||
|
|||||||||||
xvr |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 8 Всего: 223 |
Посмотрел схему, есть несколько замечаний:
1) Максимальное напряжение на выводе Ref L297 3.3V, по datasheet допутимый максимум - 3.0V 2) При номинале Rsens (U32 & U33) в 0.2Ом ток максимальный ток стабилизации для двигателя - 15А, что явно ни в какие ворота не лезет. Увелич резисторы до 2 Ом. Сейчас двигатель явно работает без стабилизации вообще, что при его сопротивлении обмотки сказывается не очень сильно ![]() 3) После увеличения резисторов до 2х Ом можно поднять напряжение питания двигателя (раза в 2) 4) Переведи L297 в Full Step режим - момент на валу увеличится 5) Двигатель сам по себе довольно хлипкий, может редуктор не потянуть несмотря ни на что :( |
|||
|
||||
Deliverance |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 52 Регистрация: 2.12.2007 Где: Украина,Донецк Репутация: нет Всего: нет |
Спасибо,завтра буду смотреть поместу,всё дело в том ,что я как раз не электронщик(( Эта тема для меня в нове.Ни платами ни ШД ни электроникой раньше вообще не занимался.Поэтому прошу мне простить мою некопетентность в даном вопросе.Ещё раз спасибо,а то посоветоваться не с кем было.)
|
|||
|
||||
Deliverance |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 52 Регистрация: 2.12.2007 Где: Украина,Донецк Репутация: нет Всего: нет |
Вобщем проверил плату. Вместо 0,2 Ом стоят 10 Ом с классом точности F , программа работает ,редуктор всё таки выделываеться((
Хочу спросить,поповоду шагового режима. В шаговом режиме кол-во шагов 200,а в полушаговом 400? Да и датчики если не напротив магнита ДХ=1. |
|||
|
||||
cardinal |
|
|||
![]() Инженер ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6003 Регистрация: 26.3.2002 Где: Германия Репутация: 8 Всего: 99 |
Модератор: Пожалуйста, один топик - один вопрос.
Deliverance, создай себе отдельную тему! -------------------- Немецкая оппозиция потребовала упростить натурализацию иммигрантов В моем блоге: Разные истории из жизни в Германии "Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино". А. и Б. Стругацкие |
|||
|
||||
xvr |
|
||||||||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 8 Всего: 223 |
Ага, т.е. ток в обмотках будет 330ма, что явно мало - поэтому движок и не тянет, уменьши до 2 ом, может быть при этом придется повесить радиаторы на L6203
Это не редуктор, а тот, кто впаял 10 ом резисторы ![]()
Скорее 100/200 - у тебя сейчас включен полушаговый и ШД делает оборот за 204 шага.
Угу, я так и предполагал |
||||||||
|
|||||||||
Deliverance |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 52 Регистрация: 2.12.2007 Где: Украина,Донецк Репутация: нет Всего: нет |
Включен фул(шаговый) 204 шага на оборот.Просмотри,пожалуйста, программу ещё раз может есть какие-то замечания.Еще внушают сомнение строчки типа "PORTB.0=1; PORTB.1=1; " и "PORTB.0=1; PORTB.1=0; " Собственно на менсте ли они?
Это сообщение отредактировал(а) Deliverance - 24.1.2008, 10:12 Присоединённый файл ( Кол-во скачиваний: 7 ) ![]() |
|||
|
||||
xvr |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 8 Всего: 223 |
Собственно если у тебя отсуствуют Rsens резисторы, то управление током двигателя работать не будет, поэтому место, где стоят PORTB.0 и пр по барабану ![]() |
|||
|
||||
Deliverance |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 52 Регистрация: 2.12.2007 Где: Украина,Донецк Репутация: нет Всего: нет |
Я это тоже запметил. Вопрос такой какую задержку поставить Здесь:
Я имею ввиду конкретно этот ШДР 56, ставил 300 не крутится. Это сообщение отредактировал(а) cardinal - 24.1.2008, 12:16 |
|||
|
||||
xvr |
|
||||||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 8 Всего: 223 |
У него максимальная скорость вращения - 400 шагов в сек, т.е. 2.5 ms на шаг, т.е. минимальная задержка - 1.25 ms (для полного шага). Для половинного соотвественно - 625 mks.
При переходе на полный шаг ее надо увеличивать в 2 раза, а не уменьшать. |
||||||
|
|||||||
Deliverance |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 52 Регистрация: 2.12.2007 Где: Украина,Донецк Репутация: нет Всего: нет |
Вот и я так то же думал,но сомневался. Значит сответственно 1250 будет как раз для шагового режима.
Обнаружил ещё одну ошибку +5 подавал не на 19 ногу L297 а на 20 Reset. А режим то оставался шаговым,так как 19 Half/Full соеденена на плате дорожкой с 17 CW/CCW. Как оно вообще работало!)) Собственно на GND. Это сообщение отредактировал(а) Deliverance - 24.1.2008, 13:11 |
|||
|
||||
Deliverance |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 52 Регистрация: 2.12.2007 Где: Украина,Донецк Репутация: нет Всего: нет |
Всё! Заработало!!!
![]() Таперь вопрос по поводу релюшек(К1иК2) которые включают пускатели движков. Сигналы с PORT D.0 и PORT D.1 не открывают трансы КТ 829А ,не пойиу почему. В проге вроде всё верно. Однако есть мнение что с контроллера всётаки не "+" а "-" на базу трансов идёт.непойму почему! Должно бёть "+". Посмотри пожалуйста. ![]() |
|||
|
||||
xvr |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 8 Всего: 223 |
Посмотрел, вроде все правильно. Проверь, не включен ли у тебя UART - он перепрограмирует PD0&1 Проверь резисторы в базе - не впаяли ли туда 0.68 Ом ![]() Попробуй оторвать базы транзисторов от выходов контролера и посмотри, будет ли на ногах контролера +5В, если нет - ищи в программе, если да - меняй транзисторы. |
|||
|
||||
Deliverance |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 52 Регистрация: 2.12.2007 Где: Украина,Донецк Репутация: нет Всего: нет |
Конторллер поменял,сгорели ноги связаные с портами Д0 и Д1 ,на новом +5 на них присутствует транзисторы вылетели оба,буду менять
Про сопроты на базе поподробнее можно. |
|||
|
||||
xvr |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 8 Всего: 223 |
Очень просто - если резисторы очень маленькие (или их нет) - то и будет описанный эффект: сгоревшие транзисторы и выбитые выходы контролера |
|||
|
||||
Deliverance |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 52 Регистрация: 2.12.2007 Где: Украина,Донецк Репутация: нет Всего: нет |
Стоят 780 Ом и там и там.я так понимаю.ты имеешь ввиду те которые между базой трензистора и ногой контроллера?
|
|||
|
||||
xvr |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 8 Всего: 223 |
Именно они. 780 Ом вполне нормально. |
|||
|
||||
Deliverance |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 52 Регистрация: 2.12.2007 Где: Украина,Донецк Репутация: нет Всего: нет |
тогда напрашиваеться вопрос.а почему сгорели транзисторы?И ещё смущает то что напруга на эмитере транса дето 36 вольт по отношения к катушке реле
Это сообщение отредактировал(а) Deliverance - 31.1.2008, 09:57 |
|||
|
||||
xvr |
|
||||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 8 Всего: 223 |
Сгореть могли по сотне разных причин: 1) Отвалились диоды, включенные паралельно катушкам реле 2) Слишком большой ток через реле - транзисторы банально перегрелись и пробились 3) Слишком большое напряжение на реле - транзисторы пробились по превышению Vкэ 4) КЗ в реле (достаточно коротнуть один раз при включенном реле)
36В на эмитере означает, что само реле подключено к 36В (а не 24В, как на схеме). Я не помню, сколько у КТ829? предельное Vкэ, но если вольт 40 - то могли и пробится. Если больше, то ничего страшного. |
||||
|
|||||
Deliverance |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 52 Регистрация: 2.12.2007 Где: Украина,Донецк Репутация: нет Всего: нет |
Привет,слу,а может ли полярность давать такие эфекты? Теристор n-p-n. На эмитере "-" на базе "+" на коллекторе "+" .Может нужен не n-p-n,а p-n-p теристор?
|
|||
|
||||
xvr |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 8 Всего: 223 |
Транзистор правильный. n-p-n как раз и управляется + на базе по отношению к эмитеру. |
|||
|
||||
Deliverance |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 52 Регистрация: 2.12.2007 Где: Украина,Донецк Репутация: нет Всего: нет |
Прорядок ,заработало,был плохой контект на сопроте от контроллера)Ща буду С датчиком мертвой точки разбираться и кнопочками))
Чёйто не включаються) Спасибо,ты мне так помогаешь)) Трансы поставил КТ 805БМ Это сообщение отредактировал(а) Deliverance - 4.2.2008, 16:03 |
|||
|
||||
xvr |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 8 Всего: 223 |
КТ805 могут не работать - не хватит h21Э (коэффициент усиления по току). КТ829 - это составные транзисторы, у них h21Э может быть более 1000, у КТ805 - порядка 150-200 в лучшем случае. |
|||
|
||||
Deliverance |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 52 Регистрация: 2.12.2007 Где: Украина,Донецк Репутация: нет Всего: нет |
Работают.нашёл другой бок Port C.7 не принимал сигнал,так как он соеденн с базой транзистора,пересадил на PORT C.5 и порядок
Теперь осталось отстроить датчик БВК 201 и будет работать. У тя нет случайно инфы по БВК 201 или ссылочки де стянуть? |
|||
|
||||
xvr |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 8 Всего: 223 |
А что это вообще такое (и чеё)? ![]() |
|||
|
||||
Deliverance |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 52 Регистрация: 2.12.2007 Где: Украина,Донецк Репутация: нет Всего: нет |
Это древние бесконтактные выключатели)) Отслеживают положение верхней мёртвой точки на сомо пресе)) конструктивно подходят вот их и оставили)
С воздушным зазором,я так думаю там геркончик или что-то типа этого внутри Это сообщение отредактировал(а) Deliverance - 7.2.2008, 15:52 |
|||
|
||||
Deliverance |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 52 Регистрация: 2.12.2007 Где: Украина,Донецк Репутация: нет Всего: нет |
Спасиюо тебе огромное за помощь! Сам бы не одолел
![]() ![]() ![]() |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Микроконтроллеры (MCU) и микропроцессоры (MPU)" | |
|
На данный раздел помимо Правил форума распространяются текже следующие правила:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, PILOT, ManiaK, UniBomb, Mazzi. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Микроконтроллеры (MCU) и микропроцессоры (MPU) | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |