Toy влак на Ардуино
Toy влак за Arduino
Добре дошли любители на електрониката! Исках да направя робот и това е една възможност, дори и проста, но все пак толкова. Влакът имаше радиоуправление предавател приемник TX-2B RX-2B - аз не виждам как тя работи преди провала вероятно е добро. Причина за неуспех: в предавателя, счупен транзистора и най-важното чип. Не се къпят за сметка на веригите за търсене, веднага реших, че proaprgreydyu играчка. Влакът излезе напред, назад, стоп - загуби мелодия. Това е! Това е, което беше в началото (вляво - създава контрол (където "Кроун") и разглобите корпуса):
Моят опит в областта на електрониката, докато бедните, но апетитът идва с яденето - и това е вярно. Първо трябва да се намери система за дистанционно управление - избрали чифт IR - TSOP 4838 и дистанционното управление не е същото като замяна на радио контрол, но решава да се измъкне от ситуацията паралелно две TSOP 4838, и да ги разположи в различни посоки (IR сензор в схемата).
По време на движението на мотора назад и напред ще отговаря чип шофьор L293D (колектор за управление на двигателя).
схематична диаграма
- RGB LED се използва от "алчност" - бяха много пристанища не са засегнати в Atmege (RGB).
- Чрез единица (говорител) ще бъде изведен 8 тонове.
- S. О. S - червен светодиод и зумер синхронно даде три точка три тирета три точки.
- В блок (дисплей ход) зелен LED - напред, назад червено.
Аз няма да направя кода на програмата, основните части са лесно достъпни в интернет, аз използвам библиотеката "IRremote.h", музика взе сайт Amperka, стандартни решения, базирани на делото и ако броячът за операторите да прилагат бавен старт и бавно спиране на двигателя. Като цяло, това не е трудно: вземат готовност и се вмъква под техните "нужди". Исках да остана само един важен момент - при съставянето, Qb_PLAY irRemote и библиотеки, използвани по същия таймера, по съвет на Amperki в библиотеката по пътя IRremote # 92; IRremoteInt.h променило тук, тези линии имат Atmega 328:
# определят IR_USE_TIMER1 // TX = щифт 9
# определят IR_USE_TIMER2 // TX = щифт 3
Друг предупреждение: PWM изход контролер има честота от 490 Hz, така че по време бавно развиване на двигателя - т.е. стартери - започнете достойни Hum. Така че, да се увеличи честотата, можете да вмъкнете следния текст в Setup:
TCCR0B = TCCR0B 0b11111000 | 0x01; // честота 62 500 кХц за 5 и 6 ARDUINO изход.
Но тук, не всичко мина гладко на TCCR0B (Таймер 0) вързани всички основни функции на времето в Arduino: това е, ако промените функциите на таймера, като например забавяне (), в милисекунди () и т.н. Ще продължим да работим, но в различна времева скала (по-бързо или по-бавно). (Благодарение Казус място). Аз proshlyapil тази тема, и вече се е разпространил си борда - трябваше да се намали времето на тезгяха. Останалите таймерите не са обвързани с Delay (), в милисекунди () промяна на тях няма да се отрази на кода.
Печатната платка на устройството
Това всъщност е такса:
След това се изправи своя код Atmeg в буутлоудъра с записват тук, на тази pin-:
Това е буутлоудъра се зашива към контролера гола:
На следващо място, монтаж и запояване и отстраняване на грешки, назначаването ще даде по-добри бутони за управление:
Присвояване на бутони за управление
Резултатите от работата
От минусите - сериен алгоритъм контролер не позволява едновременен контрол на влака и допълнителната прекъсвач (опциите продължителност - играта на музика), вероятно може по някакъв начин, но аз все още не са усвоили. Не защитен диод с обратна полярност, и като цяло не осигурява стабилна мощност към контролера - също е минус. Но като цяло, всички се подчиняват на дистанционното управление (и от всеки ъгъл) е в ход, вълни и т.н. С голямо уважение - на вградения чип Толиати (1945)