Форум » Обсуждение статей » Восьми канальная пропорциональная система управления » Ответить

Восьми канальная пропорциональная система управления

ALEX: Приемник, декодер , регулятор оборотов. Можно ли выложить исходники для демодулятора PIC16F628А. Или 7267962@mail.ru Спасибо.

Ответов - 113, стр: 1 2 3 4 5 6 7 8 All

admin: Там же есть ссылка, прямо под схемой. "Исходники здесь " правада должен предупредить что из за перехода на безколлекторные двигатели я несколько забросил этот проект. Проект далек от совершенства но вполне работоспособен . До нормального регулятора там надо дописать контроль разряда батарей, и настройку крайних положений.

ALEX: Там лежит демо, работают только три канала RB0, RB1, RB2. Я в программировании дуб, поэтому и хотел попробовать ШИМ для коллекторного движка.

admin: Работают четыре канала , четвертый канал управляет ключем шим. Ключ шим вешается на RB3 Вот фрагмент работы с шим: [pre2] ;********** 4-й канал ************** ; btfss Flags,1 ;если Flags,1=0 управляем сервоприводом ; goto K4servo ;иначе - регулятором ;если разкомментировать эти строки то можшо с помощю Flags,1 вибирать шим или серво ; закомментированные только шим ;***************************************** ; 4-й канал управляет ключем регулятора ;***************************************** call ki ;Ждем Канального импульса movlw 0ffh ;Пропустить неменяющуюся длинну импульса movwf Temp call Pause movlw 40h ;Мертвая зоно чтоб 0 не искать movwf Temp call Pause ;Измерение длительности импулса clrf ki4lo clrf ki4hi RegIzm incf ki4lo,F btfsc Status,ZF incf ki4hi,F btfsc PortA,4 goto RegIzm ; Измерение не законтилось ;Длительность измерена ; btfsc Flags,0 ;если Flags,0=0 Калибровка произведена ; goto kalibrovka ;иначе колибровка ; ***************!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ; ШИМ ; ************************************************ movf ki4hi,W btfss Status,ZF ;то пропустить goto Full decf ki4lo,F call PWMTab ; Преобразовать длительность импульса в значение ШИМ movwf CCPR1L ; Установить новое значение ШИМ clrf PCLATH ; goto Sinhro ; для работы пятого канала исправить на goto K5 Full ;если длительность импулса больше FFh movlw 0ffh ;ШИМ 100% movwf CCPR1L ; goto Sinhro ; для работы пятого канала исправить на goto K5 [/pre2] таблица значений PWMTab в конце программы. Демо приписал по описанной в предыдущем сообщении причине. Ну на всякий случай на выходные проверю , давно это было мож чего и урезал в принципе пятый канал там тоже написан , надо только вместо [pre2] goto Sinhro[/pre2] в конце шима, написать [pre2] goto K5 [/pre2] и GRB2 в пятом канале исправить на GRB5 [pre2] detect5 btfsc PortA,4 ;Ждем окончание канального импульса goto GRB2 ;конец импульса ;должно быть GRB5 [/pre2]


ALEX: Спасибо. Сейчас попробую.

ALEX: Ничего не получается. Пробую в протеусе. Вот файл протеуса и место где по моему зацикливается. http://slil.ru/29162565

admin: А версия протеуса какая ? в 7.6 на работе все работает загрузил дома в 7.5 не показывает шим но значения в регистр CCPR1L записывает . Фрагмент который вы привели это ожидание снхроимпульса, там программа проводит почти половину времени расставте brek pointы по каналам сразу будет видно, да и PPM сигнал немного не правильный. Подробней только в восресенье ,на работе объявили аврал .

ALEX: Версия протеуса 7.6 На чем можно сделать точный сигнал РРМ. Вообще то мне нужно два канала ШИМ для коллекторников, для управления гусеничной моделью. Может подскажите где посмотреть.

admin: У PIC16F628А один аппаратный ШИМ контроллер , все что для него надо это настроить конфигурацию и записать значение в CCPR1L . Если вам надо два вам надо либо делать программный шим либо брать контролер с двумя аппаратными.

ALEX: Спасибо за консультацию.

admin: Еще можно пойти по класической схеме : собрать два регулятора http://radioteh.su/telemeh/PicSpedControl.gif Для двх каналов можно обойтись и без PPM: один канал кодируется импульсом второй паузой, тогда декодер состоит из одного инвертора.

ALEX: Да нет , каналов должно быть не менее шести. Вот здесь нашел прогу на СИ, пробовал и тоже не идет.

ALEX: Вот почему я это затеял. Есть плата декодера от соосного вертолета на PIC16F628. канал "ГАЗ " управляет двумя движками с двух выходов декодера. Канал "впрао, влево" замедляет один из движков, но мало, надо до нуля. Третий канал через мост управляет "вперед, назад". Можно ли вытащить прошивку из него?

ALEX: Вот здесь нашел прогу на СИ http://vrtp.ru/index.php?s=559bfb7dc53115cf04856485117d2db6&showtopic=12836

admin: Это почти тоже что я дал в предыдущем сообщении , только по словам автора "Работает чуть подергиваясь " вот ссылка на проверенный многокрктно повторенный многими моделистами регулятор http://radioteh.su/telemeh/esc.zip там схема, прошивка , исходники. Демодулятор на PIC16F628А делался для электролета, там каждый грам был на счету, решение объеденить дешифратор и регулятор напрашивалось само тем более что в PIC16F628А аппаратный ШИМ контроллер. НО это всё регуляторы для самолетов ! Для гусеничной модели вам надо регуляторы с реверсом! думаю вам надо это: "регулятор скорости с реверсом" , как я уже говорил вам надо их два.

ALEX: По первой ссылке демодулятор на PIC12C509. Может выошиблись.



полная версия страницы