Администрация форума не несёт ответственности за достоверность информации и оставляет за собой право редактировать или в особых случаях даже удалять посты без предупреждения. Спасибо за понимание.

Программирование ATMEL в BASCOM.

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Программирование ATMEL в BASCOM. » Исходники » Контроллер двигателя радиоуправляемой модели.


Контроллер двигателя радиоуправляемой модели.

Сообщений 1 страница 17 из 17

1

1. Данное исполнение контроллера предназначено для установки на самолет. Контроллер не имеет реверса. Ниже дано исполнение контроллера с реверсом для установки на модель авто.
Контроллер получает импульсы от приемника, для двигателя это канал №3 и преобразует их в ШИМ импульсы управления мощностью двигателя.
Для частоты 3,6 МГц оцифрованные значения импульса сигнала полученного от приемника равно: минимальный газ = 81, среднее положение = 122, максимальный газ = 162.
В программе реализовано 8-ми ступенчатое регулирование ШИМ, кому надо еще плавнее, можете сами дописать строки проверки значения и преобразования в ШИМ сигнал.http://s9.uploads.ru/t/8f9pM.jpg
http://sh.uploads.ru/t/WumF8.jpg


$regfile = "ATtiny85.dat"                                     
$crystal = 3686400
$hwstack = 50
$swstack = 50
$framesize = 50

Dim Byt01 As Byte

Dim Puls As Word

Config Timer0 = Pwm, Compare A Pwm = Clear Up, Prescale = 8
Config PORTB.0 = Output

Do

pulsein Puls , PINB , 2 , 1

Byt01 = Low(Puls)

If Byt01 >= 70 And Byt01 < 90 Then         '
   OCR0A = 1
End If

If Byt01 >= 90 And Byt01 < 100 Then         '
   OCR0A = 36
End If

If Byt01 >= 100 And Byt01 < 110 Then         '
   OCR0A = 72
End If

If Byt01 >= 110 And Byt01 < 120 Then         '
   OCR0A = 108
End If

If Byt01 >= 120 And Byt01 < 130 Then         '
   OCR0A = 144
End If

If Byt01 >= 130 And Byt01 < 140 Then         '
   OCR0A = 180
End If

If Byt01 >= 140 And Byt01 < 150 Then         '
   OCR0A = 216
End If

If Byt01 >= 150 And Byt01 < 170 Then         '
   OCR0A = 254
End If

Loop

End

2. Контроллер двигателя для авто. Реализовано 4 скорости вперед и 4 назад. Драйвер силовой части реализован на китайском модуле МХ1508. Подключение модуля показано на схеме.
http://s5.uploads.ru/t/XVA2r.jpg
http://sd.uploads.ru/t/OPRQl.jpg

$regfile = "ATtiny85.dat"
$crystal = 3686400
$hwstack = 50
$swstack = 50
$framesize = 50

Dim Byt01 As Byte

Dim Puls As Word

Config Timer0 = Pwm, Compare A Pwm = Clear Up, Compare B Pwm = Clear Up, Prescale = 8
Config PORTB.0 = Output
Config PORTB.1 = Output

Do

pulsein Puls , PINB , 2 , 1

Byt01 = Low(Puls)

If Byt01 >= 70 And Byt01 < 90 Then         '
   OCR0A = 254
   OCR0B = 1
End If

If Byt01 >= 90 And Byt01 < 100 Then         '
   OCR0A = 189
   OCR0B = 1
End If

If Byt01 >= 100 And Byt01 < 110 Then         '
   OCR0A = 126
   OCR0B = 1
End If

If Byt01 >= 110 And Byt01 < 119 Then         '
   OCR0A = 63
   OCR0B = 1
End If


If Byt01 >= 120 And Byt01 < 124 Then         '
   OCR0A = 1
   OCR0B = 1
End If


If Byt01 >= 125 And Byt01 < 130 Then         '
   OCR0B = 63
   OCR0A = 1
End If

If Byt01 >= 130 And Byt01 < 140 Then         '
   OCR0B = 126
   OCR0A = 1
End If

If Byt01 >= 140 And Byt01 < 150 Then         '
   OCR0B = 189
   OCR0A = 1
End If

If Byt01 >= 150 And Byt01 < 170 Then         '
   OCR0B = 254
   OCR0A = 1
End If

Loop

End

Отредактировано free (2019-06-30 18:32:34)

0

2

Сюда ещё минимальную защиту транзистора т.к у вас индуктивная нагрузка. Да и оптрон тут не нужен.

0

3

Да диод нужен в параллель движку, позже поправлю схемку.
А как вы без оптрона реализуете подачу 12 вольт на управляющий вывод мосфета? городить два транзистора с кучей резисторов?

0

4

free написал(а):

Контроллер получает импульсы от приемника, для двигателя это канал №3 и преобразует их в ШИМ импульсы управления мощностью двигателя.
Для частоты 3,6 МГц оцифрованные значения импульса сигнала полученного от приемника

Вот отсюда, плиз, поподробнее... ;)
ШИМ и т.п - тут все ясно, а в этом вопросе - от вас ни слова...
Что за приемник, что за передатчик, что за "канал №3", как осуществляется "получение импульсов от передатчика" ?

0

5

free написал(а):

А как вы без оптрона реализуете подачу 12 вольт на управляющий вывод мосфета? городить два транзистора с кучей резисторов?

Используйте мосфет с LogicGate.

0

6

На алиэкспресс да и во многих магазинах появилась недорогая система радиоуправления моделями, называется flysky fs-i6. С нею в комплекте идет приемник. Аппаратура с завода шестиканальная, путем вдумчивого гугления можно прошить ее и сделать 10 канальной.
Я приобрел данную аппаратуру за 3000 руб и увяз в желании полетать и порулить моделями. Заводские контроллеры двигателей есть кругом, а хочется что то свое создать, вот об этом и написал в первом посте.
У приемника есть выход на каждый канал сервомашинки, каналы это движение вперед-назад, влево-вправо, газ и еще 7 каналов что сам придумаешь (свет, гудок...).

0

7

free написал(а):

появилась недорогая система радиоуправления моделями, называется flysky fs-i6.

А есть уверенность, что не будете пойманы за нарушения Закона ?
Китайцам это глубоко фиолетово, а в РФ частоты "около 2.4 МГц" весьма регламентированы...

0

8

Сгорит Ваш мосфет, даже с LogicGate. Драйвер нужен для затвора, или сразу для двигателя.

0

9

sla174 написал(а):

Сгорит Ваш мосфет, даже с LogicGate. Драйвер нужен для затвора, или сразу для двигателя.

А как же тогда у меня RGB-ленты работают силами IRL540N ? ;)
И как-то сразу от МК...
Ну, резисторы, само собой...
https://radiokot.ru/forum/viewtopic.php … 8#p2487577

Отредактировано Nord (2019-06-30 19:57:04)

0

10

Все дело в токе нагрузки и частоте переключения.  Двигатель модели помощнее ленты будет, при большой частоте затворная емкость оказывает большое влияние на время переключения полевика, когда канал полевика находится в промежуточном состоянии, т.е. не полностью открыт, на нем выделяется значительная мощность. Ни вывод контроллера, ни оптрон не смогут обеспечить токи заряда и разряда затворной емкости порядка 1 ампера. Условно говоря, при токах  нагрузки выше 1-2 ампер и частотах порядка выше килогерца понадобится радиатор на мосфет,  с ростом частоты и тока радиатор перестанет помогать и придется применять драйвер. Ток и частота условны и зависят от параметров мосфета. Вот...

0

11

sla174 написал(а):

Все дело в токе нагрузки и частоте переключения.

+100500

sla174 написал(а):

Двигатель модели помощнее ленты будет

Не факт...

sla174 написал(а):

Условно говоря, при токах  нагрузки выше 1-2 ампер и частотах порядка выше килогерца понадобится радиатор на мосфет

RGB лента (не адресная) 4м.
Указанные полевики прекрасно живут без радиатора.

$Crystal=8000000
Config Timer1 = Pwm, Pwm = 8, Compare A Pwm = Clear Up, Compare B Pwm = Clear Up, Prescale = 8
Config
Timer2 = Pwm, Compare Pwm = Clear Up, Prescale = 8

Если есть желание - считайте частоту... ;)

0

12

Ну, если лента как у меня, то ток потребления у Вас будет 0,8 А на канал цвета при частоте 3,9 кГц. В теорию и практику это укладывается нормально  :rolleyes:
Если же подключить двигатель от шуруповерта, например, то радиатор не поможет, проверено лично - без драйвера никак. Пробовал и порты микроконтроллера параллелить, 6шт, не хватает, мосфет сгорает и сжигает порт или весь мк, как повезет. А если нагрузка импульсный трансформатор, то без предохранителя подключать к аккумулятору нельзя - погорят дорожки на плате и провода до 0,35 мм диаметром.
Вот такой вот опыт - сын ошибок  :blush:

0

13

sla174 написал(а):

Ну, если лента как у меня, то ток потребления у Вас будет 0,8 А на канал цвета при частоте 3,9 кГц. В теорию и практику это укладывается нормально   Если же подключить двигатель от шуруповерта, например, то радиатор не поможет, проверено лично - без драйвера никак.

Но ведь в данной теме шуруповерт не фигурирует... ;)

0

14

Но его двигатель был приспособлен на модель  :blush:
Неудачно, если честно, но надо быть готовым ко всему.

0

15

sla174 написал(а):

Но его двигатель был приспособлен на модель

И где про это сказано ? ;)

0

16

Я к тому, что двигатели бывают разные. Мне вот захотелось вездеход в своё время, вот тогда я и узнал что такое драйвер мосфета и для чего он нужен.
Можно и не ставить его, я никого к этому не принуждаю  :nope:

Отредактировано sla174 (2019-07-01 16:52:26)

0

17

sla174 написал(а):

Я к тому, что двигатели бывают разные.

Неоспоримо. ;)
Дойдем до "шуруповерта" - будем думать, а пока будем крутить то, что дали... ;)

0


Вы здесь » Программирование ATMEL в BASCOM. » Исходники » Контроллер двигателя радиоуправляемой модели.