Усім доброго, три місяці тому - сидячи «на відповідях маїл ру» натрапив на запитання: http://otvet.mail.ru/question/92397727 , після даної мною відповіді автор питання почав писати мені в особу, з листування стало відомо що Тов. "Ivan Ruzhitsky", він же "STAWR" будує р/в машинку по можливості без "дорогих" заводських залізяків.
З покупного в нього були RF модулі на 433МГц і відро радіодеталей.
Я не те щоб «захворів» на цей задум, але все ж таки став розмірковувати про можливість реалізації даного проекту з технічного боку.
На той момент я в теорії радіоуправління був вже досить добре підкований (я так думаю), крім того; деякі напрацювання вже були на озброєнні.
Ну а для людей яким цікаво – Адміністрація вигадала кнопку……
Отже:
Всі вузли робилися «на коліні» відповідно до «краси» ніякої, основне завдання з'ясувати - на скільки цей проект здійснимо і в скільки це «вилізе» в рублях та у трудонях.
ПУЛЬТ:
Саморобний передавач робити не став із двох причин:
1. Іван уже має.
2. Одного разу намагався зробити 27МГц - ні чого хорошого з цього не вийшло.
Оскільки управління замислювалося пропорційним, всякі пульти від китайського мотлоху відпали самі собою.
Схему кодера (шифратор каналів) взяв із цього сайту: http://ivan.bmstu.ru/avia_site/r_main/HWR/TX/CODERS/3/index.html
Дякуємо величезним авторам, саме через цей пристрій мені довелося ще навчитися «прошивати» МК.
Передавач і приймач купив тут-таки на «Парку» правда на 315МГц, просто вибирав дешевше:
На сайті з кодером є все необхідне - сама схема, друкована плата під праску і ціла купа прошивок з різними витратами.
Корпус пульта спаяний зі склотекстоліту, стіки взяв від вертолітного пульта на ІЧ управлінні, можна було і від комповського геймпада, але дружина мене вбила б, вона на ньому грає в «DmC», Відсік для батарейок від того ж пульта.
Приймач є, але щоб тачка їхала потрібен ще й декодер (дешифратор каналів), ось його шукати довелося дуже довго – у мене навіть «гугл» спітнів, ну як то кажуть «що шукає та знайде» і ось він: http://homepages .paradise.net.nz/bhabbott/decoder.html
Там само і прошивки для МК.
Регулятор: Спочатку зробив що простіше:
Але їздити тільки передом не айс і був обраний ось цей:
Посилання на сайт: http://vrtp.ru/index.php?showtopic=18549&st=600
Там само і прошивки.
Перерва гору материнок та відео карт потрібних транзисторівне знайшов, а саме для верхнього плеча (Р-канальні), тому Н-мост (це вузол, який живить мотор) був спаяний на базі Тошибовської мікросхеми з відеомагнітофону «TA7291P»,
максимальний струм 1,2А - що мене цілком влаштовувало (не TRAXXAS - роблю), плату малював маркером за 20р, травив хлорним залізом, паяв з боку доріжок. Ось що вийшло.
В ефір випромінюється «чистий» РРМ, звичайно, не є добре, на літак я таке не поставлю, а для іграшки піде і так.
Машинка взята заводська, від братів китайців, вся трибуха окрім ходового двигуна віддалена і на її місце засунуть наш з Іваном проект, хоч ми й зайняті їм порізно, задумка його!
Витрачено:
Комплект RF модулів – 200р
Два МК PIC12F675 – по 40р за штуку.
Серва - TG9e 75р
+3 вечори.
Якщо будуть питання з радістю відповім, (багато про що не написав)
З повагою Василь.
Для радіокерування різними моделями та іграшками може бути використана апаратура дискретної та пропорційної дії.
Основна відмінність апаратури пропорційної дії від дискретної полягає в тому, що вона дозволяє по командам оператора відхиляти кермо моделі на будь-який потрібний кут і плавно змінювати швидкість і напрямок руху «Вперед» або «Назад».
Будівництво і налагодження апаратури пропорційної дії досить складні і не завжди під силу радіоаматору-початківцю.
Хоча апаратура дискретної дії має обмежені можливостіАле, застосовуючи спеціальні технічні рішення, можна їх розширити. Тому розглянемо далі однокомандну апаратуру управління, придатну для колісних, літаючих і плаваючих моделей.
Схема передавача
Для керування моделями в радіусі 500 м, як показує досвід, достатньо мати передавач з вихідною потужністю близько 100 мВт. Передавачі радіокерованих моделей, як правило, працюють у діапазоні 10 м.
Однокомандне керування моделлю здійснюється наступним чином. При подачі команди управління передавач випромінює високочастотні електромагнітні коливання, тобто генерує одну несучу частоту.
Приймач, який знаходиться на моделі, приймає сигнал, надісланий передавачем, в результаті чого спрацьовує виконавчий механізм.
Мал. 1. Принципова схемапередавача радіокерованої моделі.
У результаті модель, підкоряючись команді, змінює напрямок руху або здійснює одне якесь заздалегідь закладене в конструкцію моделі вказівку. Використовуючи однокомандну модель управління, можна змусити модель здійснювати досить складні рухи.
Схема однокомандного передавача представлена на рис. 1. Передавач включає генератор коливань високої частоти, що задає, і модулятор.
генератор, Що Задає, зібраний на транзисторі VT1 за схемою ємнісної трьох-точки. Контур L2, С2 передавача налаштований на частоту 27,12 МГц, яка відведена Держзв'язокнаглядом електрозв'язку для радіокерування моделями.
Режим роботи генератора постійного струму визначається підбором величини опору резистора R1. Створені генератором високочастотні коливання випромінюються в антену простір, підключеної до контуру через узгоджуючу котушку індуктивності L1.
Модулятор виконаний на двох транзисторах VT1, VT2 і є симетричний мультивібратор. Модулювана напруга знімається з колекторного навантаження R4 транзистора VT2 і подається в загальний ланцюг живлення транзистора VT1 високочастотного генератора, що забезпечує 100% модуляцію.
Керується передавач кнопкою SB1, яка включена в загальний ланцюг живлення. генератор, Що Задає, працює не безперервно, а тільки при натиснутій кнопці SB1, коли з'являються імпульси струму, що виробляються мультивібратором.
Посилання в антену високочастотних коливань, створених генератором, що задає, відбувається окремими порціями, частота проходження яких відповідає частоті імпульсів модулятора.
Деталі передавача
У передавачі використані транзистори з коефіцієнтом передачі струму бази h21е щонайменше 60. Резистори типу МЛТ-0,125, конденсатори — К10-7, КМ-6.
Узгоджуюча антенна котушка L1 має 12 витків ПЕВ-1 0,4 і намотана на уніфікованому каркасі від кишенькового приймача з підбудовним феритовим осердям марки 100НН діаметром 2,8 мм.
Котушка L2 безкаркасна і містить 16 витків дроту ПЕВ-1 0,8 намотаних на оправці діаметром 10 мм. Як кнопка управління можна використовувати мікроперемикач типу МП-7.
Деталі передавача монтують на друкованій платі із фольгованого склотекстоліту. Антена передавача є відрізком сталевого пружного дроту діаметром 1...2 мм і довжиною близько 60 см, яка підключається прямо до гнізда X1, розташованому на друкованій платі.
Усі деталі передавача повинні бути поміщені в алюмінієвий корпус. На передній панелі корпусу знаходиться кнопка управління. У місці проходження антени через стінку корпусу до гнізда XI повинен бути встановлений пластмасовий ізолятор, щоб запобігти торканню антени корпусу.
Налагодження передавача
При заздалегідь справних деталях та правильному монтажі передавач не потребує особливого налагодження. Необхідно лише переконатися у його працездатності і, змінюючи індуктивність котушки L1, досягти максимальної потужності передавача.
Для перевірки роботи мультивібратора треба увімкнути високоомні навушники між колектором VT2 та плюсом джерела живлення. При замиканні кнопки SB1 у навушниках повинен прослуховуватись звук низького тону, що відповідає частоті мультивібратора.
Для перевірки працездатності генератора ВЧ необхідно зібрати хвилемір за схемою рис. 2. Схема являє собою простий детекторний приймач, в якому котушка L1 намотана дротом ПЕВ-1 діаметром 1...1,2мм і містить 10 витків з відведенням від 3 витка.
Мал. 2. Принципова схема хвилеміру налаштування передавача.
Котушка намотана з кроком 4 мм на пластмасовому каркасі діаметром 25 мм. Як індикатор використовується вольтметр постійного струмуз відносним вхідним опором 10 кОм / або мікроамперметр на струм 50 ... 100мкА.
Хвильномір збирають на невеликій пластині з фольгованого склотекстоліту завтовшки 1,5 мм. Включивши передавач, мають від нього хвилемір з відривом 50...60 див. При справному генераторі ВЧ стрілка хвилеміра відхиляється деякий кут від нульової позначки.
Налаштовуючи генератор ВЧ на частоту 27,12 МГц, зрушуючи та розсуваючи витки котушки L2, домагаються максимального відхилення стрілки вольтметра.
Максимальну потужність високочастотних коливань, випромінюваних антеною, отримують обертанням сердечника котушки L1. Налаштування передавача вважається закінченим, якщо вольтметр хвилеміру на відстані 1...1,2 м від передавача показує напругу не менше 0,05 В.
Схема приймача
Для управління моделлю радіоаматори часто використовують приймачі, побудовані за схемою надрегенератора. Це пов'язано з тим, що надрегенеративний приймач, маючи просту конструкцію, має дуже високу чутливість, близько 10...20 мкВ.
Схема надрегенеративного приймача моделі наведена на рис. 3. Приймач зібраний на трьох транзисторах та живиться від батареї типу «Крона» або іншого джерела напругою 9 ст.
Перший каскад приймача є надрегенеративним детектором з самогаше-ням, виконаний на транзисторі VT1. Якщо на антену не надходить сигнал, цей каскад генерує імпульси високочастотних коливань, наступних з частотою 60...100 кГц. Це і є частота гасіння, яка задається конденсатором С6 та резистором R3.
Мал. 3. Принципова схема надрегенеративного приймача радіокерованої моделі.
Посилення виділеного командного сигналу надрегенеративним детектором приймача відбувається в такий спосіб. Транзистор VT1 включений за схемою із загальною базою та його колекторний струм пульсує із частотою гасіння.
При відсутності на вході приймача сигналу ці імпульси детектуються і створюють на резисторі R3 деяку напругу. У момент надходження сигналу приймач тривалість окремих імпульсів зростає, що призводить до збільшення напруги на резисторі R3.
Приймач має один вхідний контур L1, С4, який за допомогою осердя котушки L1 налаштовується на частоту передавача. Зв'язок контуру з антеною - ємнісний.
Прийнятий приймачем сигнал керування виділяється на резисторі R4. Цей сигнал у 10...30 разів менший за напругу частоти гасіння.
Для придушення напруги, що заважає, з частотою гасіння між надрегенеративним детектором і підсилювачем напруги включений фільтр L3, С7.
При цьому на виході фільтра напруга частоти гасіння в 5 ... 10 разів менше амплітуди корисного сигналу. Продетектований сигнал через розділовий конденсатор С8 подається на базу транзистора VT2, що є каскадом посилення низької частоти, а далі на електронне реле, зібране на транзисторі ѴТЗ і діодах VD1, VD2.
Посилений транзистором ТЗ сигнал випрямляється діодами VD1 і VD2. Випрямлений струм (негативної полярності) надходить з урахуванням транзистора ВТЗ.
При появі струму на вході електронного реле колекторний струм транзистора збільшується і спрацьовує реле К1. Як антена приймача можна використовувати штир довжиною 70... 100 см. Максимальна чутливість надрегенеративного приймача встановлюється підбором опору резистора R1.
Деталі та монтаж приймача
Монтаж приймача виконують друкованим способом на платі фольгованого склотекстоліту товщиною 1,5 мм і розмірами 100x65 мм. У приймачі використовуються резистори та конденсатори тих же типів, що й у передавачі.
Котушка контуру надрегенератора L1 має 8 витків дроту ПЕЛШО 0,35, намотаних виток до витка на полістироловому каркасі діаметром 6,5 мм, з підбудовним феритовим сердечником марки 100НН діаметром 2,7 мм і довжиною 8 мм. Дроселі мають індуктивність: L2 - 8 мкГн, а L3 - 0,07 ... 0,1 мкГн.
Електромагнітне реле К1 типу РЕМ-6 з обмоткою опором 200 Ом.
Налаштування приймача
Налаштування приймача починають із надрегенеративного каскаду. Підключають навушники високоомні паралельно конденсатору С7 і включають живлення. Шум, що з'явився в навушниках, свідчить про справну роботу надрегенеративного детектора.
Зміною опору резистора R1 досягають максимального шуму в навушниках. Каскад посилення напруги на транзисторі VT2 та електронне реле особливої налагодження не вимагають.
Підбором опору резистора R7 досягають чутливості приймача близько 20 мкВ. Остаточне налаштування приймача проводиться разом із передавачем.
Якщо в приймачі паралельно обмотці реле К1 підключити навушники та увімкнути передавач, то в навушниках повинен прослуховуватися гучний шум. Налаштування приймача на частоту передавача призводить до пропадання шуму в навушниках та спрацьовування реле.
У деяких випадках потрібна однокомандна система дистанційного керування, Досить проста, дешева, з гарною дальністю. Наприклад, у ракетному моделюванні, коли у певний момент потрібно викинути парашут. Зазвичай для таких цілей використовують систему, що складається з простого надрегенеративного приймача та передавача. Звичайно така схема дуже проста за кількістю транзисторів, але для отримання хорошої чутливості приймачеві-надрегенератору потрібна кропітка настройка, налагодження, яка до того ж легко збивається під дією таких зовнішніх факторів, як вплив зовнішніх ємностей, зміни температури, вологості. І проблема не тільки у відхиленні частоти налаштування (це не так страшно), скільки в тому, що змінюється коефіцієнт зворотнього зв'язкуу надрегенераторі, режим транзистора, що в кінцевому результаті надрегенеративний приймач перетворює на звичайний детекторний приймач або на генератор.
Більш стабільних параметрів при такій же простоті (за кількістю деталей) можна досягти, якщо побудувати приймальний тракт за супергетеродинною схемою на інтегральній мікросхемі. Але спеціалізовані мікросхеми для зв'язкової апаратури не завжди є в наявності. Зате, напевно, у кожного радіоаматора знайдеться мікросхема К174ХА34 або навіть готовий радіомовний приймальний тракт на її основі. Якийсь час тому було простаки повальне захоплення конструюванням УКХ-ЧМ радіомовних приймачів на її основі. Зараз багато з них відправлено «на дальню полицю».
Нагадаю, що мікросхема К174ХА34 (аналог TDA7021) є супергетеродинний радіоприймальний тракт УКХ-ЧМ діапазону, що працює з низькою проміжною частотою (70 кГц). Така низька ПЧ дозволяє в найпростішому варіанті обмежитися лише одним контуром – гетеродинним. Позбутися LC або п'єзокерамічних фільтрів ПЧ (фільтри зроблені на ОУ за RC-схемами). А в результаті виходить приймальний тракт, що майже не вимагає налаштування, - якщо все правильно спаяти працює відразу ж, - тільки контур гетеродина підлаштувати і готове.
Мікросхеми К174ХА34 випускалися в 16-ти та 18-ти вивідних корпусах. Що цікаво, цоколівки у них майже збігаються. Їх навіть можна встромити в ту саму плату, підігнувши або відрізавши зайві висновки, або залишивши дві дірки порожніми. Просто потрібно подумки уявити, що у 18-вивідного корпусу немає висновків 9 і 10. Якщо їх не брати до уваги то за номерами все як у 16-вивідного варіанта. У мене була мікросхема в 16-виєодному корпусі.
І так, у 16-висновного варіанта є висновок 9 (це ж висновок 11 у 18-висновного), так цей висновок зазвичай або не використовувався, або служив для індикатора точної настройки. Напруга на ньому змінюється в залежності від величини вхідного сигналу. Так от, якщо ця напруга з нього подати на транзисторний ключ з електромагнітним реле на виході, то при включенні передавача (навіть без модуляції) реле перемикатиме контакти.
Практично беремо типовий приймальний тракт К174ХА34 і задіємо 9-й висновок (рис.1). Тепер залишається лише налаштувати приймальний тракт на потрібну частоту контуром L1-C2. І відрегулювати резистором R2 поріг спрацьовування реле.
Антена приймача може бути будь-якої конструкції, – це залежить від місця, де буде встановлений приймальний тракт. У мене антеною служить жорсткий сталевий дріт завдовжки 30 см.
Схема передавачапоказано малюнку 2. Це однокаскадний генератор ВЧ з антеною на виході.
Налаштування передавача потрібно виконувати з підключеною антеною. Як антена можна використовувати дротяний штир довжиною не менше 1 метра. У процесі налаштування потрібно налаштувати передавач на вільну частоту в діапазоні УКХ-ЧМ. Для цього потрібний контрольний УКХ-ЧМ приймач з індикатором точного налаштування. Передавач працює без модуляції, тому факт прийому буде видно лише за індикатором точного налаштування. Втім, тимчасово можна зробити модуляцію, подавши на базу транзистора VT1 (рис.2) якийсь аудіосигнал.
Налаштування частоти передавача котушкою L1. Глибину ПОС можна змінювати змінюючи співвідношення конденсаторів С2 і СЗ (зручніше буде замінити їх підстроювальними). Потім буде потрібно ще раз точне припасування частоти.
Режим роботи каскаду виставляється резистором R1 експериментально по найкращій віддачі, але струм споживання не повинен бути більше 50 мА.
Деталі. Котушка гетеродина приймального тракту безкаркасна. Її внутрішній діаметр 3мм. Провід - ПЕВ 0,43, а число витків 12. Змінювати індуктивність котушки можна стискаючи і розтягуючи її як пружину.
Котушка передавача має аналогічну конструкцію і також регулюється її індуктивність. Але внутрішній діаметр котушки 5 мм, а число витків 8. Провід теж товстіший – ПЕВ 0,61.
Взагалі, ці котушки можна намотувати практично будь-яким обмотувальним або срібним дротом перетином від 0,3 до 1,0 мм.
Електромагнітне реле малопотужне з обмоткою на 5V (РЕМ-55А, опір обмотки 100 Ом). Можна використовувати інше реле з обмоткою на 5V. Якщо потрібно працювати з реле з обмоткою на більш висока напругаНеобхідно відповідно збільшити напругу живлення схеми, і паралельно конденсатору С14 підключити стабілітрон на 4,5-5,5V.
Прочитавши цей пост спалахнув і я ідеєю склепати свій літачок. Взяв готові креслення, замовив у китайців моторчики, акумулятори та пропелери. А ось радіокерування вирішив зробити самостійно, по-перше - так цікавіше, по-друге - треба себе чимось зайняти поки посилка з рештою запчастин їхатиме, ну і по-третє - з'явилася можливість соригінальнічать і додати всяких плюшок.
Обережно, картинки!
Як і чим керувати
Нормальні люди беруть приймач, встромляють у нього сервомашинки, регулятор швидкості, рухають важелі на пульті і радіють життю не задаючись принципами роботи і не заглиблюючись у подробиці. У нашому випадку таке не пройде. Першим завданням стало дізнатися яким чином управляються сервомашинки. Все виявляється досить просто, у приводу є три дроти: + живлення, - живлення та сигнальний. На сигнальному дроті прямокутні імпульси шпаруватості, що змінюється. Щоб зрозуміти, що це таке дивимося картинку:Отже, якщо ми хочемо встановити привід в крайнє ліве положення, потрібно слати імпульси тривалістю 0,9 мс з інтервалом 20 мс, якщо в крайнє праве - тривалість 2,1 мс, інтервал той же, ну з середніми положеннями аналогічно. Як виявилось, регулятори швидкості управляються аналогічно. Ті, хто в темі скажуть що це звичайний ШІМ, який реалізувати на будь-якому мікроконтролері – нікчемна справа. Ось і я так вирішив, купив у місцевому магазині сервомашину і склепав на макетці для неї так званий сервотестер на ATtiny13. І тут виявилося, що ШІМ не зовсім простий, а з підводним камінням. Як видно з наведеної вище діаграми, шпаруватість (відношення тривалості імпульсу до тривалості періоду) від 5% до 10% (надалі я за крайні положення приймаю імпульси тривалістю 1,0мс і 2,0мс) для 256-значного ШІМ лічильника ATtiny13 це відповідає значенням 25 до 50. Але це за умови, що на заповнення лічильника піде 20мс, а на ділі так не вийде і для частоти 9,6МГц і 1024 предделителя потрібно обмежити лічильник значенням 187(ТОР), у такому разі у нас вийде частота 50,134Гц. У більшості (якщо не у всіх) сервомашинок немає точного генератора опорної частоти і тому частота сигналу, що управляє, може трохи плавати. Якщо залишити ТОР лічильника 255, то частота сигналу, що управляє, буде 36,76Гц - на деяких приводах воно буде працювати (можливо з глюками), але далеко не на всіх. Отже, тепер у нас 187-значний лічильник, для нього 5-10% відповідають значенням від 10 до 20 – лише 10 значень, трохи дискретно вийде. Якщо думаєте пограти з тактовою частотою і ділителем нижче наводжу порівняльну табличку для 8-бітного ШИМу:
Але ж більшість мікроконтролерів мають 16-бітовий (і більше) таймер для генерації ШІМ. Тут проблема з дискретністю відразу пропаде ще й частоту можна виставити. Довго розписувати не буду, одразу даю табличку:
Я не думаю, що для китайської сервомашинки є суттєва різниця у 600 та 1200 значень, тому питання з точністю позиціонування можна вважати закритим.
Багатоканальне керування
З однією сервомашинкою розібралися, але для літака їх потрібно щонайменше три і ще регулятор швидкості. Рішення «в лоб» - взяти мікроконтролер із чотирма каналами 16-бітного ШІМ, але такий контролер стоятиме дорого і, швидше за все, займе багато місця на платі. Другий варіант – запиляти програмний ШІМ, але займати процесорний час – це теж не варіант. Якщо знову подивитися на діаграми сигналу, то 80% часу він не несе ніякої інформації, тому раціональнішим було б ШІМом задавати лише сам імпульс 1-2мс. Чому шпару змінюється в таких вузьких межах, адже простіше було б і формувати і зчитувати імпульси з шпару хоча б 10-90%? Навіщо потрібен той неінформативний шматок сигналу, що займає 80% часу? Я запідозрив, що, можливо, ці 80% можуть займати імпульси для інших виконавчих механізмів, а потім сигнал поділяється на кілька різних. Тобто, у періоді тривалістю 20мс можуть вміститься 10 імпульсів тривалістю 1-2мс, потім цей сигнал якимось демультиплексором поділяється на 10 різних із тривалістю періоду якраз 20мс. Сказано – зроблено, намалював у PROTEUS таку схемку:У ролі демультиплексора – 74HC238, на його вхід E подаються імпульси з виходу мікроконтролера. Ці імпульси - ШІМ із періодом 2мс (500Гц) та шпаруватістю 50-100%. У кожного імпульсу своя шпаруватість, що означає стан кожного каналу. Ось так виглядає сигнал на вході Е:
Для того, щоб 74HC238 знав, на який вихід подати поточний сигнал використовуємо PORTC мікроконтролера та входи A, B, C демультиплексора. В результаті на виходах отримуємо такі сигнали:
Сигнали на виході виходять правильної частоти (50Гц) та шпаруватості (5-10%). Отже, потрібно генерувати ШІМ частотою 500Гц і заповненням 50-100%, ось табличка для налаштування предделителя та ТОР 16-бітного лічильника:
Цікаво, що можлива кількість значень ШІМу рівно в 1000 разів менша за частоту таймера.
Програмна реалізація
Для ATmega8 з тактовою частотою 16МГц в AtmelStudio6 все реалізується наступним чином: спочатку задефайним значення лічильника для крайніх положень сервомашинок:#define LOW 16000U #define HIGH 32000U
потім ініціалізуємо генератор ШІМу на таймері/лічильнику1:
OCR1A = HIGH; //Встановлюємо ТОР TCCR1A = 0<
ISR(TIMER1_COMPA_vect) //переривання досягнення верхнього значення лічильника, безпосередньо перед початком наступного імпульсу ( //c_num- змінна, що позначає номер поточного каналу, channels - масив значень каналів if (c_num<= 7) { OCR1B = channels; } else { OCR1B = 0; //отключаем ШИМогенератор для несуществующих в демультиплексоре 8 и 9 канала } } ISR(TIMER1_COMPB_vect, ISR_NOBLOCK)// прерывание возникающее в конце импульса { if (c_num <= 7) { PORTC = c_num; //для каналов 0-7 выводим номер канала на PORTC } //и изменяем значение счетчика от 0 до 9 if (c_num >= 9) ( c_num = 0; ) else ( c_num++; ) )
Глобально дозволяємо переривання і готово, забиваючи в каналах значення від LOW до HIGH змінюємо значення на каналах.
Реалізація у залізі
Ну з теорією розібралися, настав час все це реалізувати. Мозком системи обраний мікроконтролер ATmega8A, що тактується від кварцу на 16МГц (не тому, що я захотів 16000 позицій сервомашинки, а тому, що у мене такі валялися). Керуючий сигнал для МК надходитиме через UART. В результаті вийшла ось така схема:Через деякий час з'явилася така хустка:
Два триштирьових роз'єми я не припаяв тому, що вони мені не потрібні, а не поспіль вони впаяні оскільки у мене немає металізації отворів, а в нижньому роз'ємі доріжки з двох сторін, можна було б замінити дротом, але програмно немає проблеми виводити сигнал на будь-який роз'єм . Також відсутній 78L05 тому що в моєму регуляторі двигуна є вбудований стабілізатор (ВЕС).
Для отримання даних до плати підключається радіомодуль HM-R868:
Спочатку думав встромляти його прямо в плату, але ця конструкція не містилася в літачок, довелося зробити через шлейф. Якщо змінити прошивку, то контакти роз'єму для програмування можна використовувати для увімкнення/вимкнення будь-яких систем (бортові вогні тощо)
Плата коштувала приблизно 20грн = $2.50, приймач - 30грн = $3,75.
Передавальна частина
Літак є, залишилося розібратися з наземною апаратурою. Як вже писалося раніше, дані передаються UART, на кожен канал по одному байти. Спочатку підключав свою систему проводом через перехідник до комп'ютера команди слав через термінал. Щоб дешифратор визначав початок посилки, а в майбутньому виділяв посилки адресовані саме йому спочатку шлеться байт-ідентифікатор, потім 8 байт визначальних стан каналів. Пізніше почав використовувати радіомодулі, при відключенні передавача всі моторчики починали дико смикатися. Щоб відфільтрувати сигнал від шумів, десятим байтом шлю XOR всіх 9 попередніх байт. Допомогло, але слабко, додав ще перевірку на таймаут між байтами, якщо він перевищується – вся посилка ігнорується і прийом починається заново, з очікування байта-ідентифікатора. З додаванням контрольної суми у вигляді XOR надіслати команди з терміналу стало напруженим, тому я швидко наклепав ось таку програму з повзунками:Число в нижньому лівому кутку – контрольна сума. Пересуваючи повзунки на компі рухалися керма літаком! Взагалі налагодив я все це і став думати про пульт дистанційного керування, купив для нього ось такі джойстики:
Але потім мене завітала одна думка. Свого часу я тягся від будь-яких авіасимуляторів: "Іл-2 Штурмовик", "Lock On", "MSFSX", "Ка-50 Чорна Акула" та ін. Відповідно був у мене джойстик Genius F-23 і вирішив я прикрутити його до вищеописаній прозі з повзунками. Погугли як це реалізувати, знайшов цей пост і вийшло! Керувати літачком за допомогою повноцінного джойстика, мені здається, набагато крутіше, ніж маленькою паличкою на пульті. Взагалі все разом зображено на першій фото - це нетбук, джойстик, перетворювач на FT232, і підключений до нього передавач HM-T868. Перетворювач підключається 2м кабелем від принтера, що дозволяє закріпити його на якомусь дереві або чимось подібному.
Пуск!
Отже, є літачок, є радіоуправління - Поїхали!(с) Перший політ проводився над асфальтом, результат - зламаний навпіл фюзеляж і напіввирваний двигун. Другий політ проводився над м'якішою поверхнею:Наступні польотів 10 були теж особливо вдалими. Основною причиною я вважаю сильну дискретність джойстика – по крену він видавав лише 16 значень (замість можливих 256), з віссю тангажу – не краще. Але оскільки в результаті випробувань літак був значно пошкоджений та не підлягає ремонту:
- перевірити правдивість цієї версії поки неможливо. На користь цієї версії говорить і зафіксована на відео спроба вирівняти літак - він летить накраненим, а потім різко завалюється на протилежний бік (а має плавно). Ось більш наочне відео:
Дальність дії апаратури – приблизно 80м, далі також ловить, але через раз.
Ну ось і все, дякую за увагу. Сподіваюся, наведена інформація виявиться для когось корисною. Радий відповісти на всі питання.
В архіві схема та розведення плати для Протеуса.
Що хочеться сказати від себе — чудове рішення у будь-якій ситуації дистанційного контролю. Насамперед це стосується ситуації, коли є необхідність керувати великою кількістю пристроїв на відстані. Навіть якщо й не потрібно керувати великою кількістю навантажень на відстані – розробку зробити варто, тому що конструкція не складна! Пара не рідкісних компонентів - це мікроконтролер PIC16F628Aта мікросхема MRF49XA -трансівер.
В Інтернеті вже давно нудиться і обростає позитивними відгуками чудова технологія. Вона отримала назву на честь свого творця (10 командне радіоуправління на mrf49xa від blaze) і знаходиться за адресою
Нижче наведемо статтю:
Схема передавача:
Складається з керуючого контролера та трансівера MRF49XA.
Схема приймача:
Схема приймача складається з тих самих елементів, як і передавач. Практично, відмінність приймача від передавача (не враховуючи світлодіоди та кнопки) полягає лише у програмній частині.
Трохи про мікросхеми:
MRF49XA- малогабаритний трансівер, що має можливість працювати у трьох частотних діапазонах.
1. Низькочастотний діапазон: 430,24 - 439,75 Mгц(Крок 2,5 кГц).
2. Високочастотний діапазон А: 860,48 - 879,51 МГц(Крок 5 кГц).
3. Високочастотний діапазон Б: 900,72 - 929,27 МГц(Крок 7,5 кГц).
Межі діапазонів вказані за умови застосування опорного кварцу частотою 10 МГц, передбаченого виробником. З опорними кварцами 11МГц устрою нормально працювали на частоті 481 МГц. Детальні дослідження на тему максимальної затягування частоти щодо заявленої виробником не проводилися. Імовірно вона може бути не така широка, як у мікросхемі ТХС101, оскільки в датасіті MRF49XAзгадується про зменшений фазовий шум, одним із способів досягнення якого є звуження діапазону перебудови ГУН.
Пристрої мають такі характеристики:
Передавач.
Потужність - 10 мВт.
Струм, що споживається в режимі передачі - 25 мА.
Струм спокою - 25 мкА.
Швидкість даних - 1кбіт/сек.
Завжди передається ціла кількість пакетів даних.
Модулювання FSK.
Перешкодостійке кодування, передача контрольної суми.
Приймач.
Чутливість – 0,7 мкВ.
Напруга живлення - 2,2 - 3,8 В (згідно з датішиту на мс, на практиці нормально працює до 5 вольт).
Постійний споживаний струм - 12 мА.
Швидкість даних до 2 кбіт/сек. Обмежена програмно.
Модулювання FSK.
Перешкодостійке кодування, підрахунок контрольної суми прийому.
Алгоритм роботи.
Можливість натискання будь-якої комбінації будь-якої кількості кнопок передавача одночасно. Приймач при цьому відобразить натиснені кнопки світлодіодами в реальному режимі. Простіше кажучи, поки натиснута кнопка (або комбінація кнопок) на передавальної частини, на приймальній частині горить відповідний світлодіод (або комбінація світлодіодів).
Кнопка (або комбінація кнопок) відпускається - відповідні світлодіоди одразу гаснуть.
Режим тесту.
І приймач і передавач за фактом подачі на них живлення входять на 3 сек у режим тесту. Приймач і передавач включаються в режим передачі несучої частоти, запрограмованої в EEPROM, на 1 сек 2 рази з паузою 1 сек (під час паузи передача вимикається). Це зручно під час програмування пристроїв. Далі обидва пристрої готові до роботи.
Програмування контролерів.
EEPROM контролера передавача.
Верхній рядок EEPROM після прошивки та подачі живлення на контролер передавача виглядатиме так…
80 1F - (подіапазон 4хх МГц) - Config RG
AC 80 - (точне значення частоти 438 MГц) - Freg Setting RG
98 F0 - (максимальна потужність передавача, девіація 240 кГц) - Tx Config RG
82 39 — (передавач увімкнено) — Pow Management RG .
Перший осередок пам'яті другого рядка (адреса 10 h) - Ідентифікатор. За замовчуванням тут FF. Ідентифікатор може бути будь-який у межах байта (0...FF). Це персональний номер (код) пульта. На цій же адресою в пам'яті контролера приймача знаходиться його ідентифікатор. Вони обов'язково мають збігатися. Це дає можливість створювати різні пари приймач/передавач.
EEPROM контролера приймача.
Всі налаштування EEPROM, згадані нижче, автоматично запишуться на свої місця за фактом подачі на контролер живлення після його прошивки.
У кожному з осередків дані можна змінювати на власний розсуд. Якщо в будь-яку комірку (крім ідентифікатора), що використовується для даних, вписати FF, за наступним включенням живлення ця комірка негайно буде переписана даними за замовчуванням.
Верхній рядок EEPROM після прошивки та подачі живлення на контролер приймача виглядатиме так…
80 1F - (подіапазон 4хх МГц) - Config RG
AC 80 - (точне значення частоти 438 MГц) - Freg Setting RG
91 20 - (Смуга приймача 400 кГц, максимальна чутливість) - Rx Config RG
C6 94 - (швидкість даних - не швидше 2 кбіт/сек) - Data Rate RG
C4 00 - (АПЧ вимкнено) - AFG RG
82 D9 — (приймач увімкнено) — Pow Management RG .
Перший осередок пам'яті другого рядка (адреса 10 h) - Ідентифікатор приймача.
Для коректної зміни вмісту регістрів як приймача так і передавача скористайтесь програмою RFICDA, вибравши мікросхему TRC102 (це клон MRF49XA).
Примітки.
Зворотний бік плат - суцільна маса (залужена фольга).
Дальність упевненої роботи в умовах прямої видимості – 200 м.
Кількість витків котушок приймача та передавача - 6 . Якщо скористатися опорним кварцом 11 МГц замість 10 МГц, частота піде вище близько 40 МГц. Максимальна потужність та чутливість у цьому випадку будуть при 5 витках контурів приймача та передавача.
Моя реалізація
На момент реалізації пристрою під рукою виявився чудовий фотоапарат, тому процес виготовлення плати та монтажу деталей на плату виявився як ніколи захоплюючим. І ось до чого це призвело:
Насамперед треба виготовити друковану плату. Для цього я постарався якомога детальніше зупинитися на процесі її виготовлення
Вирізаємо потрібний розмір плати Бачимо, що є окисли — потрібно їх позбутися Товщина попалася 1.5 мм
Наступний етап – очищення поверхні, для цього варто підібрати необхідний інвентар, а саме:
1. Ацетон;
2. Наждачний папір (нульовка);
3. Гумка (стерка)
4. Засоби для очищення каніфолі, флюсу, оксидів.
Ацетон та засоби для змивки та очищення контактів від оксидів та піддослідна плата
Процес очищення відбувається як показано на фото:
Наждачним папером зачищаємо поверхню склотекстоліту. Так як він двосторонній, робимо все з обох боків.
Беремо ацетон і знежирюємо поверхню+змиваємо залишки крихти наждакового паперу.
І вуала - чиста плата, можна наносити лазерно-прасним методом печатку. Але для цього потрібна друк 🙂
Вирізаємо із загальної кількості Обрізаємо зайве
Беремо вирізані печатки приймача та передавача та прикладаємо їх до склотекстоліту наступним чином:
Вид друку на склотекстоліті
Перевертаємо
Беремо праску і всю цю справу прогріваємо рівномірно, до появи відбитка доріжок на звороті. ВАЖЛИВО НЕ ПЕРЕГРІТИ!Інакше попливе тонер! Тримаємо 30-40 сек. Поступово погладжуємо складні і погано прогріті місця друку. Результатом хорошого перекладу тонера на склотекстоліт є поява відбитка доріжок.
Гладка і важка основа улюга Прикладаємо до друку розігріту праску
Притискаємо друк і перекладаємо.
Ось так виглядає готовий друкований друк на другому боці журнального глянцевого паперу. Має бути видно доріжки приблизно як на фото:
Аналогічний процес проробляємо з другою печаткою, яка у вашому випадку може бути приймачем або передавачем. Я розмістив все на одному шматку склотекстоліту
Все має охолонути. Потім акуратно пальцем під струменем води видаляємо папір. Скачуємо її пальцями трохи теплою водою.
Під злегка теплою водою Пальцями скочуємо папір Результат очищення
Не весь папір виходить таким чином. Коли плата висихає залишається білий «наліт», який при травленні може створити деякі непротруєні ділянки між доріжками. Відстань маленька.
Тому ми беремо тонкий пінцет чи циганську голку та видаляємо зайве. На фото чудово видно!
Окрім залишків паперу, на фото видно, як у результаті перегріву в деяких місцях злиплися контактні майданчики для мікросхеми. Їх потрібно акуратно, тією самою голкою, як можна уважніше роз'єднати (зіскребти частину тонера) між контактними майданчиками.
Коли все готово переходимо до наступного етапу – травлення.
Так як у нас склотекстоліт двосторонній і зворотний бік суцільна маса нам потрібно зберегти там мідну фольгу. Для цієї мети заклеїмо її скотчем.
Скотч та захищена плата Друга сторона захищена від травлення шаром скотчу Ізолента як «ручка» для зручності травлення плати
Тепер труїмо плату. Я роблю це старим дідівським методом. Розводжу 1 частину хлорного заліза до 3 частин води. Весь розчин у банку. Зберігати та використовувати зручно. Розігріваю в мікрохвильовій печі.
Кожна плата труїлася окремо. Тепер беремо в руки вже знайому нам «нульовку» та зачищаємо тонер на платі