Arduino-радиоуправление на модел на кола с nRF24L01
Част II
 

     Посвещавам тази статия на моя приятел Николай Др. Николов, с когото направихме много устройства в моделистиката в младежките ни години.

    Акцентът в тази статия е върху механичната преработка на модел на кола, който съм превърнал от една елементарна механична играчка в радиоуправляем модел.

    Преди много години недалече от Централна поща се намираше Културния център на бившата Германска Демократична Република. Веднъж през 1985 година, разхождайки се из центъра на града, се отбих в него, просто да погледам и поразсея. Така забелязах една детска играчка, лека кола с кабелно дистанционно управление и веднага си я купих.

    В последствие тази кола се превърна в базов модел за моите експерименти в моделистиката, с които ме зарази колегата ми и приятел Николай. Много бързо направихме предавател с ШИМ модулатор и приемник с радиоуправлние на 27Mhz, които публикувахме по-късно в няколко статии в списание "Радио, телевизия и електроника" / 1988 г. Тази играчка влезе в игрите и на моето малко момиченце, като аз управлявах колата, а тя возеше в нея куклите си Барби и техните куфарчета от и до импровизираните "автогара" и "ж.п. гара". Е, тя порасна, но аз продължих да си играя. Един ден, много по-късно в годините, видях друга подходяща детска кола - Мерцедес, която също купих. Преработих я като прехвърлих в нея радиоуправлението от жълтата германска кола. (Мерцедесът все още съществува и работи).

    А сега, когато вече опознах възможностите на Arduino, се сетих отново за старата жълта количка. Един ден се качих на тавана, извадих частите й от кашона и започнах с носталгия да ги сглобявам. Количката заприлича на показаната по-горе на снимките. Тогава ми хрумна да я възстановя заедно със сладките си спомени от детските години на дъщеря ми и да я направя с Arduino управление.

    Ето такава е историята на настоящия проект, в който няма нищо ново като програмен код, освен спомените за едно безвъзвратно отминало време.

    Преработките, които съм направил, бих могъл да класифицирам в следните направления:

    А) преработка на предния мост и добавяне на кормилно управление със сервомеханизъм
    Б) преработка на задния мост с добавяне на подходящ електромотор и редукция
    В) електронно управление с Arduino

    1. Преден мост.

    Предният мост трябва да управлява посоката на движението на модела. За целта ми беше необходимо сервоуправление и подходящо окачване на сервото към кормилната щанга. Но за съжаление, оригиналът не изпълняваше такива функции и се наложи сам да изработя кормилна рейка, която се явяваше свързващото звено между предния мост и сервомашинката. Решението беше изключително простичко - едно парченце меден проводник от електроинсталация 3 х 1,5 кв. мм. подходящо огънато и закрепено към кормилната щанга и сервомашинката:

    Ухото в левия край на рейката служи за закрепване към кормилната щанга, а засечката на 90 градуса за закрепване към сервото. И двете части имат малък луфт за да осигурят свободното движение на сервото, рейката и кормилната щанга. Ухото се нанизва върху предварително закрепено винтче М2 закрепено перпендикулярно на щангата, а засечката в един от фабричните отвори на сервомеханизма, който също предварително е разширен до Ф = 1,5 мм. Реално проводникът е с Ф = 1,3 мм. Може сами да направите изчислението, като имате предвид, че сечението е S = 1,5 кв.мм., а всъщност ето готовия отговор - 1,23 мм. Така се осигурява достатъчно свобода на движение на рейката в отвора на сервомашинката. Може би се питате защо вземам подобни предохранителни конструктивни мерки - защото трябва да превърна въртеливото движение на сервото в постъпателно движение на кормилната щанга, тоест от движение в полукръг в линейно движение и така да осигуря завъртане в ляво и дясно на предните колела и промяна на посоката на движение на модела.

    Ето как осъществих горната промяна в конструкцията на модела:

    И при този модел, както в предишния, фиксирах сервомашинката с две капки моментно лепило за да мога да извърша механичното закрепване и настройка на дължината на кормилната рейка от меден проводник. След като завърша окончателно модела, ще закрепя сервомашинката с допълнителна планка, която ще заздрави конструкцията, но за тези настройки тя не е необходима.

    На следващите снимки съм показал управлението на предния мост заедно с шасито на модела на кола, чиито размери съм имал предвид при осъществяване на преработката на конструкцията:

    Както се вижда от горните снимки, постъпателното движение на кормилната рейка се осъществява без затруднение в пространството между калниците на предните колела. В пространството над рулевата (серво) машинка ще монтирам платката, която вмества Arduino и високочестотния модул за радиоуправление nRF24L01.

    С това най-трудната част от преработката на модела е осъществена и преминавам към:

    2. Заден мост.

    Основната преработка на задния мост е редуктора и е свързано с установяване на такива обороти на задната ос, че движението на модела да бъде със скорост около 5 км/час, така че модела да може лесно да се управлява както от дете, така и от възрастен. Тази преработка се наложи поради прекалено бързото движение на модела с оригиналните зъбчати колела. За да намаля скоростта се наложи да увелича предавателното число на предавката. Това водеше неминуемо към разместването на зъбните колела. Най-голямата трудност, с която се сблъсках беше разпробиването на нови отвори в металната конструкция за оси на зъбните колела. Тук наистина страдах от точност - бургията се хлъзгаше по повърхността и се наложи да разпробия първо с много тънка, а след това с по-голям диаметър докато достигна до желания размер. За да се случи всичко това, първо наредих върху един бял лист А4 всички зъбни колела, очертах ги, измерих разстоянията между осите, преброих броя на зъбите и преизчислих предавателните числа. Така се наложи да сменя още веднъж зъбните колела с друг брой зъби. На следващата снимка съм показал преработения редуктор, като на него рязко се отличават по цвят добавените зъбни колела:

    А ето изглед на редуктора от две страни:

    Електромоторът, който монтирах е със захранващо напрежение 12V, но работи при спад на напрежението до 6V. На неговите изводи съм запоил филтриращи кондензатори 2х100nF/63V, а корпусът на мотора ще заземя (за общия минус). Ето окончателния вид на конструкцията на задния мост:

    Върху тази конструкция отново съм монтирал шасито, което покрива механизмите и придава допълнителна якост на конструкцията:

    3. Електронно управление.

    Механиката вече е готова, но колата все още не. Оставащото възможно място е твърде малко и след внимателно замерване успях да включа в него електронната част, състояща се от приемник nRF24L01, Arduino Nano, драйвер за мотори TB6612. Последния управлява два мотора, от който аз използвам половината. Драйверът позволява управление с ШИМ, което удовлетворява моите изисквания за въвеждане на пропорционалност в управлението (тоест, по-бавно или по-бързо движение на мотора). Но ето и вида на електронната част след като получих печатната платка:

    Следва видът на печатната платка, върху която са монтирани основната част от елементите и модулите:

    На следващите снимки съм показал свързването на електронното управление към останалата механическа част на колата - сервомашинка и двигател. В този вид колата вече беше в работно състояние и проведох първите експерименти за работоспособност. В този вид извърших настройките на центъра на рулевата сервомашинка така, че в първоначално състояние предните колела да застанат в състояние на права посока :

    В този вид, нетърпеливо закачих батериите и изпробвах колата. Останах доволен от резултата и реших да продължа с довършителните дейности по сглобяването й до завършен вид. От конструктивна гледна точка моделът на колата е "измислен" добре - шаси, две половини на кабината. Именно с тях трябваше да продължа.

    Ето и полуготовия й вид:

    Дори и в този полуготов вид колата беше годна за употреба. Окабеляването между платките, батериите и мотора отзад направих по канала, образуван от кардана, върху който е импровизирания скоростен лост. Цялата електронна част съм монтирал в отсека между двата предни калника като драйверът за мотори TB6612 е под платката с Arduino и nRF24L01.

    А на следващите снимки е окончателния вид на модела:

    Схемите на свързване на платките са същите като в Част I, като единствено е сменен драйверът за мотори. Изходите за управление на драйвера са цифрови пинове 5, 6 и 7, които се свързват към входове АIN1 и AIN2 на драйвера ТВ6612, като по-специално pin 5 се свързва към вход PWM. Съответно изходите за електродвигателя са на AO1 и AO2. Входoве STBY и VCC се свързват към +5V на Arduino платката, а VM към батерията с която се захранва колата. Модулът TB6612 може да се намери в различни разновидности, които много си приличат.

    Ето две от тях, като аз съм използвал първата:

    С цел предотвратяване на смущенията от колектора на двигателя съм замасил корпуса му към минуса на схемата, а паралелно на изводите съм запоил два кондензатора по 100nF към корпуса му.

    Прилагам два файла с графични оригинали, които са по-скоро за ориентир, тъй като те са направени спрямо геометричните размери на конкретната кола: pcb_arduino_car_2.zip [zip,pcb][16kb]

    Използваният програмен код е различен спрямо Част I, но запазва основната идея и функционалността му: rx_tx_nrf24l01_2.zip [zip,ino][2kb]

    Може да намерите в интернет радиоуправляеми модели в най-различни изпълнения, освен описаните от мен по радиоканал с модул nRF24L01. Например чрез блутут или смарт телефон с ОС Android.


Литература:

1. Arduino Wireless Laser Turret
2. Arduino Remote Control Car (w/ Nrf24l01 and L298n)
3. Радиоуправляемая машина на arduino nrf24l01 (№1)
4. Радиоуправляемый автомобиль на Arduino
5. Делаем машинку на радиоуправлении на Arduino Uno
6. RF Control System for R/C Vehicle Based on Arduino and NRF24L01
7. Make a 4WD RC Car
8. 500 схем пропорционального управления [zip,djvu][3,2mb]

А ето и книгата, от която съм се учил преди много години:

9. Гюнтер Миль, "Электронное дистанционное управление моделями" [zip,djvu][15,0mb]
 

Валери Терзиев
17 февруари 2017 година