Новый регулятор скорости с реверсом
хммм
{}
Адрес форума www.microchip.ru/phorum/list.php?f=2
{}
да, для этой разработки я делал генератор ппм на pic12f675 - этакий сервотестер, но с учетом того что у этого пика 4 входа АЦП легким движением руки сервотестер превращается…сервотестер превращается… в 4х канальный цифровой ппм кодер… (где вот только джойстики взять и передатчик)
а случайно легким движением руки сервотестер не превращается в контроллер сервы? 😉 а то есть несколько серв с дохлой электроникой…
А, захотелось легко заполучить цифровую серво ?
А, захотелось легко заполучить цифровую серво ?
цифровая - это прошивка должна быть очень сильно заточена под конкретную модель механики. и вылизана до последнего байтика 😉
имхо конечно.
мне бы поуши хватило бы чтоб это по скорости работало на уровне стандартного серво.
ps: а вот вашего вопроса я в принципе не понял. что вы хотели этим сказать?
кому нужно в принципе ваше высказывание? или это попытка устроить флейм?
если хотели о чем-то предупредить dynaco то надо было написать ему в личку наверное…
Ну если вопроса не поняли, то и отвечать было не нужно… 😃 Извините, обижать не хотел.
Я просто копал в этом направлении, и схему паял и софт писал, даже работает, но того, чего хотелось, так и не получил, просто дело было летом, времени жалко на это дело было, летать хотелось…
Я просто хотел сказать, что на самом деле не так легко написать софт для этого дела. Но в процессе написания и отладки, появился ряд идей, появится время, обязательно реализую.
Вот, даже софт могу показать, схемы на работе нету, где то дома валяется. Да и что там схема - пик+питание+мост
Ну если вопроса не поняли, то и отвечать было не нужно… 😃 Извините, обижать не хотел.
все. замнем для ясности. 😉
Я просто хотел сказать, что на самом деле не так легко написать софт для этого дела. Но в процессе написания и отладки, появился ряд идей, появится время, обязательно реализую.
я вот как раз это все понимаю - лично у мя очень мало опыта по програмированию под пики. вот и спросил.
[quote;121957]Вот, даже софт могу показать, схемы на работе нету, где то дома валяется. Да и что там схема - пик+питание+мост
[/quote]
общая концепция схемы ясна. эта прошивка работает хотя бы как стандартное серво? если совсем не влом будет - черкани поподробнее схему на всякий случай… ( в принципе из файла все вроде понятно, но на всякий случай 😉
оооох
начнем с плохого
пик есть 8 мибитный контроллер который медленно умножает (очень медленно). Для отработки скорости и положения нужно завести обратные связи по току и положению, можно еще бемф мотора мерять. Но все это дополнительная обвязка. В качестве драйвера двигателя теоретически можно использовать драйвер мощного фет транзистора гдето на сайтах роботеров я видел применение какогото максима. Далее обьем кода. Я как то раз подключал асмовские библиотеки с плавающей запятой для логарифмов и еще пары действий - вылез за 3 килобайта. Если писать на си - компилятор с оптимизацией вталкивает это в килобайт - полтора. ну и плюс механика. Короче - я с удовольтвием поучаствую, но я был плохим студентом и тау проспал, заодно и половину привода.
Да - если нужно - то всЁ какоето можно поискамши заменить на конкретные названия
pdfserv.maxim-ic.com/en/ds/MAX4426-MAX4428.pdf вот эти спаренные 1.5а максимальный ток, дип8
максим высылает пару микросхем разработчикам бесплатно
до 8 типов за раз (16 корпусов) =))
Добавлено
Сорри, ни схему ни новую прошивку я так и не выложил.
В новой версии программы оказалась маленькая ошибочка которая уже исправлена. Сегодня приду с работы и проверю программу, если все будет ок - будет обновление.
офтоп - поставил себе халфлайф2 =) я просто приятно поражен. играл до пол четвертого утра. Теперь вот пью кофе…
Вот, как и обещал, схемы
Первая, это та, на которой я экспериментировал, вторая - проект. Главный недостаток первой, не излишнее количество “ненужных” элементов (резисторы там лишние, еще кое что), они нужны для защиты, в первой схеме отсутствует тормоз. Из за этого качалка сервы чуть пролетает нейтраль и возвращается на место. Боюсь, что практического применения ни схема ни софт не имеют. Все нуждается в доработке. Меня еще мучают сомнения в необходимости PWM для управления мотором. Думаю, что без арифметики с плавающей точкой в данном случае обойтись можно, а складывает, вычитает, умножает и делит на 2 PIC быстро.
Комментарии по второй схеме - приветствуются. Например, D1 - там не нужен, он “встроен” в PIC. X4,X5,X6 - контакты для переменного резистора (X4-ползунок). X1,X2 - питание, X3 - сигнал. X7,X8 - электродвигатель.
PS
А ТАУ я тож подзабыл уже, надо будет лекции перечитать, но как не хочется ворошить прошлое 😃
я вот тут чего удумал. У пика ножки свободные остались.
Можно на них сигналы тормоза и реверса повесить. Ну белый фонарь при заднем ходе и сигнал на красные фонари при снижении скорости.
Кстати я порылся по тем транзисторам которые доступны и чтобы цена не кусалась вот к примеру IRF1405 170A выдерживает, и сопротивление у него 0.01 ома (реально там еще меньше - чтото около 0.007) открывается полностью напряжением большим чем 4.5 вольта.
короче следующий буду делать с бутстрепной цепочкой и транзисторы одинаковые. Единственное ограничение будет минимальное напряжение питания 7-8 вольт для стопроцентной гарантии открытия транзисторов.
Опобровал прошивку с нелинейным регулированием - не понравилось.Себе вернул линейный вариант, а на сайте выложу оба.
хочу обсудить алгоритм безопасности. А то в моем коде вы можете не разобраться.
При старте контроллер производит конфигурацию всей периферии и счетчик подтверждения у станавливается в 100 - ровно столько ППМ импульсов нейтрального (1.5мс) положения ждет регулятор для подтверждения безопасного включения. это приблизительно 2 секунды нужно продержать регулятор в нейтрали. Если из-за потери сигнала будут пропущены 3 ППМ импульса подряд то вотчдог сбрасывает контроллер - ну и все с начала. Двигатель останавливается и ждет 2 секунды в нейтрали чтобы начать работу.
Времена - предмет обсуждения и изменения по желанию трудящихся
Только уж нужно ждать не четко 1,5 мс импульсов, а там ±5%, а то не дождешся никогда 😃
Народ, может кто подскажет схему JDM программатора? а а то не чем пик этот шить… 😊
ищи усовершенствованный вариант JDM с отключением Vdd - а то серия 12ф будет глючить
Вот, как и обещал, схемы
Первая, это та, на которой я экспериментировал, вторая - проект.
Комментарии по второй схеме - приветствуются. Например, D1 - там не нужен, он “встроен” в PIC. X4,X5,X6 - контакты для переменного резистора (X4-ползунок). X1,X2 - питание, X3 - сигнал. X7,X8 - электродвигатель.
Думаю выходной каскад лучше сделать несколько иначе. Кварц это намёк на генератор.
Думаю выходной каскад лучше сделать несколько иначе. Кварц это намёк на генератор.
пока мне не понятно почему в выходной каскад должен быть на транзисторах.
это имхо сложно 😉
чем не устраивают драйверы коллекторных двигатлей?
в футабе же стоят. и ничего, работает. сам лично ремонтировал футабувскую машинку (3001 или 3003… непомню точно ) в которой подох это драйвер (точнее изначально не работал, как из коробки достали). заменил на LB1638 (даташит можно посмотреть на www.chipinfo.ru )
схема соответственно сводится к трем микрухам - стабилизатор, контроллер, драйвер двигателя. из обвязки в основном конденсаторы по питанию…
Я понял Вашу идею. Чем больше копаю теорию, тем больше понимаю, что тормоз не особо то и нужен. ПИД (PID) алгоритмы нормально работают без него. Намек на кварц, вовсе и не намек 😃 скорее всего так и придется поступить, если 4-х мегагерц не хватит для нормальной разрешающей способности сервы.
Вот, что еще интересно mstar2k.com/servo.htm - где там стабилизатор напряжения? На сколько я знаю у Меги те же 5.5В - максимальное напряжение питания? И что там за мост такой.
И кстати, для сервы, как мне кажется будет куда удобнее использовать новые PIC12F683 (как 675 но еще и ШИМ, и памяти больше) либо 16F684 - будут свободные выводы под RS-232. Но пока в посылторге их не найду.
Добавлено
чем не устраивают драйверы коллекторных двигатлей?
Ну как чем, найти сложнее, а так, конечно удобнее. Да, и биполярный совсем не хочется - не современно 😃
чем не устраивают драйверы коллекторных двигатлей?
в футабе же стоят. и ничего, работает. сам лично ремонтировал футабувскую машинку (3001 или 3003… непомню точно ) в которой подох это драйвер (точнее изначально не работал, как из коробки достали). заменил на LB1638 (даташит можно посмотреть на www.chipinfo.ru )схема соответственно сводится к трем микрухам - стабилизатор, контроллер, драйвер двигателя. из обвязки в основном конденсаторы по питанию…
Я тоже смотрел на LB1638M (SOIC8), пойдёт только на микро вариант или взамен родной в машинку HS-55. Если нужно получить большое усилие да ещё
и быструю перекладку без полевиков не обойтись. В машинке HS700 стоит конкретно мост на полевиках в ТО220х корпусах.
Добавлено
Я понял Вашу идею. Чем больше копаю теорию, тем больше понимаю, что тормоз не особо то и нужен.
ПИД (PID) алгоритмы нормально работают без него. Намек на кварц, вовсе и не намек 😃 скорее всего так и придется поступить, если 4-х мегагерц не хватит для нормальной разрешающей способности сервы.
Вот, что еще интересно mstar2k.com/servo.htm - где там стабилизатор напряжения? На сколько я знаю у Меги те же 5.5В - максимальное напряжение питания? И что там за мост такой.
И кстати, для сервы, как мне кажется будет куда удобнее использовать новые PIC12F683 (как 675 но еще и ШИМ, и памяти больше) либо 16F684 - будут свободные выводы под RS-232. Но пока в посылторге их не найду.
По поводу тормоза я не соглашусь на схемке как раз и имелось ввиду использовать именно такую развязку и для торможения и по питанию.
Не знаю!
Кроме фото там то практически ничего нет, но МЕГУ8 Гордон Андерсон как всегда круто загнул.
Может быть да, а вот с 16F*** можно ещё дальше пойти отказавшись от колекторного мотора ❗
По поводу тормоза я не соглашусь на схемке как раз и имелось ввиду использовать именно такую развязку и для торможения и по питанию.
Да, я понял, понял, хороший способ выключить верхнии полевики
{}
Теперь перейдем к Вашим действиям. Перед программированием (или стиранием) PIC12F675 нужно считать память программ и записать на листочек значение из ячейки 3FFh. Далее стираем память PIC12F675, проверяем. Загружаем hex-файл регулятора. Изменяем значение в ячейке 3FFh на то, что Вы записали на листочек. Программируем. Проверяем. Всё!
Для тех, кто сначала стер PIC12F675 (так же как и я в первый раз). У меня в PIC12F675 по этому адресу было значение 3490h. Программировал с помощью IC-PROG и JDM-programmer.
Надеюсь помог тем, кто уже наступил или хочет наступить на этот граблик:)))
Успехов!
Руки к теме вернулись только вчера… 😉
действительно, проблема была именно в этом. перед програмированием микросхемы надо занести калибровочную константу. и будет счастье!
Спасибо!
а для IC 12F629 по какому адресу калибровочная находится?
а для IC 12F629 по какому адресу калибровочная находится?
там же. по последнему. проверено.
Спешу поделиться радостью!!!
Пик прошился(629-й) дело было в калибровочной константе, а то самое приславутое гофиг. слово это описане того как пик шить какой ген, и тд.
вот осталось разобраться почему мост не пашет.(полевики в поряде, вроде.)