Простые устройства
Просто об устройствах

  • Родительская категория: Проекты
  • Категория: Переделки
  • Просмотров: 36111

Вторая жизнь радиоуправлемой машинки

Игрушка для папыВ давние-стародавние времена, 13 лет назад, была куплена радиоуправляемая машинка для себя любимого. В нее успели наиграться сыновья, а машинка была еще жива, но родной NiMH аккумулятор не выдержал пытки и почил с миром. Попытка его живить ни к ему не привела, осталось в нём емкости от 420 ма·ч где-то 50-70 ма·ч. Была предпринята попытка заменить его на Li-ion от ноутбуков, но электроника отказывалась нормально работать от 3,7 в и глючила страшно. Попытка поставить DC/DC до 5в. привела к судорожному дерганью ходового мотора, а напихать большой дроссель и конденсаторы по выходу DC/DC не было физически места.

И было принято кардинальное решение: выкинуть всю электронику в машинке и пульте и заменить новой.

Пульт оказался полностью дискретным в части управления, мозгом там была PT8A977BP вот с такой схемой включения:

Исходная схема пульта

Мозгом машинки (приемника) был собрат по несчастью PT8A978BP со следующей схемой включения:

Исходная схема приемной части

Покопавшись в загашниках, было решено использовать в качестве мозга atmega8L, а для радиочасти NRF24L01+, которых было множество в наличии для использования в умном доме. В пульте (передатчике) оставлялись к использованию кнопки (ползунки) которые управляют направлением движения машинки и траекторией.

Сервомашинки в приемнике были собраны по неведомой конструкции и представляли собой по сути редуктор с DC-мотором. Характеристики, которые удалось с них снять:

  • Максимальный ток сервы на поворотные колеса 0.27 А при 3.5 в. Сопротивление сервы 17 Ом в неподвижном среднем положении, от 1 кОм до 150 Ом при выкрученных в сторону колесах.
  • Ток ведущих колес на холостых оборотах 0.43 А при 3.5 в, под нагрузкой до 2.3 А и потом защита у акб срабатывает. Сопротивление на проводах ведущих колес 1.3 Ом, если их не трогать.

По размерам посадочного места в машинке (приемнике) не густо, максимальная высота платы с деталями 16 мм, но не по всей площади платы, т.к. есть дырки под крепление и ограничители по краям.

Что должно быть по функционалу:

 

  1. Движение вперед и назад с регулировкой скорости (ШИМ) или на первое время просто вкл/выкл
  2. Поворот в лево и вправо.
  3. Вкл/выкл фары спереди и габариты сзади
  4. Вкл/выкл проблесковых маячков из двух светодиодов на крыше машины (полицейская мигалка).
  5. Вкл/выкл гудка (пищалки) со звуком клаксона автомобиля.

 

{ads2}

Начнем с передатчика, т.к. с ним получилось проще всего, кроме не поместившейся в корпус платы.

Схема принципиальная:

Новая схема передатчика

Кнопки подключены по такой схеме только ради экономии места и возможности выхода микроконтроллера из powerdown при нажатии на любую кнопку. Совершенно не рекомендую такое решение, если питание не батарейное, или есть управление силовой нагрузкой, т.к. МК может ловить помехи от наводок по портам кнопок, и их нужно будет шунтировать резисторами и стабилитронами. По питанию в результате была оставлена батарейка типа «Крона» и поставлен LDO AMS1117-3.3 (на схеме не показан) с выключателем.

Алгоритм работы передатчика:

 

  1. Инициализировали перефирию
  2. Если нажата или отпущена одна из кнопок, то выходим из сна и отправляем в NRF состояние порта кнопок
  3. Если в течении 5 секунд кнопки не нажимают или отпускают, то уходим в Powerdown
  4. Раз в 5 секунд проверяем напряжение питания МК, если оно ниже 2.5в, то двукратно пищим
  5. Идем в пункт 2.

 

В результате пультик выглядит в разобранном виде так:

Новый передатчик в сборе

Слева плата управления, в центре старая плата, которую выпаивать не стал, ибо не мешала.

В будущем есть планы вырезать Крону и поставить 18650, но лень.

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

Щель...

Кнопки на пульте имеют следующее назначение:

Расположение кнопок на пульте

Остальные органы управления (вперед/назад, влево/вправо) остались без изменений.

Приемник.

Схема принципиальная:

Новая схема приемной части

Красным выделены элементы, которые пришлось добавлять уже после изготовления печатной платы на этапе наладки. Т.к. ходовой двигатель потреблял ток до 5 А легко, то от этого МК становилось плохо, и он перезагружался. Решается эта проблема добавленными элементами: VD1L2C10, L3C9. Перечисленные элементы установлены навесным монтажом.

VD2V3R21R22 реализуют ШИМ-управление ходовым двигателем. Дело в том, что если этого не сделать, машина превращается в адский скоростной болид, соответственно редуктор или корпус машины просто развалятся после столкновения с препятствиями или от времени. Без ШИМ реализован Турбо режим, если одновременно нажать Фара+Мигалка+Гудок, таким же нажатием он и отключается.

В разобранном виде обновленная машинка выглядит так:

Внутренности

Места у неё в нутре совсем не много:

Места немного...

Плата управления двухэтажная (из двух плат), на второй реализован H-мост по управлению ходовым двигателем:

Двухэтажная плата

C другого ракурса плата приемника

И еще с одного ракурса плата приемникаСледует отдельно описать работы с NRF, т.к. было много времени потрачено на превращение готовой библиотеки, найденой интернетах, в рабочий вариант.

Главной проблемой были дубликаты получаемых комманд, виной тому была неправильная обработка принятой команды на приемнике, не правильно было так:

 

  • Ждем от NRF поднятия флага RX_DR, входим в обработчик приема;
  • Выгребаем из буфера приема команду, отправляем ее на обработку;
  • Сбрасываем флаг RX_DR.

 

Это в корне не верно, т.к. флаг RX_DR говорит только о факте принятия данных буфер, но команд может прийти несколько (всего буфер NRF рассчитан на 3 команды).

Правильный алгоритм такой:

 

  • Ждем от NRF поднятия флага RX_DR, входим в обработчик приема;
  • Выгребаем из буфера приема команду, отправляем ее на обработку;
  • Проверяем есть ли еще принятые команды по флагу RX_P_NO, если есть, то переходим к п2;
  • Сбрасываем флаг RX_DR.

 

Инициализация NRF используется следующая (от NRF нужна дальность, но не скорость):

{code}#define SETUP_AW_5BYTES_ADDRESS (3 << AW)
#define SETUP_RETR_DELAY_1500MKS (5 << ARD)
#define SETUP_RETR_UP_TO_5_RETRANSMIT (5 << ARC)
#define RF_SETUP_250KBPS (1 << RF_DR_LOW)
#define RF_SETUP_0DBM       (3 << RF_PWR)
#define mirf_CH  10 //transmission channel
#define mirf_PAYLOAD        0 //payload lenght

mirf_write_register(EN_AA,(1<mirf_write_register(EN_RXADDR, (1 << ERX_P0) | (1 << ERX_P1));               // включение каналов 0 и 1
mirf_write_register(SETUP_AW, SETUP_AW_5BYTES_ADDRESS);      // выбор длины адреса 5 байт
mirf_write_register(SETUP_RETR, SETUP_RETR_DELAY_1500MKS | SETUP_RETR_UP_TO_5_RETRANSMIT);   // задаем ждать подтверждение от принимающего 1,500мс и пять попыткот нас до него достучаться
mirf_write_register(RF_SETUP, RF_SETUP_250KBPS | RF_SETUP_0DBM);             // выбор скорости 250 кбит/с и мощности 0dBm
mirf_write_register(RF_CH, mirf_CH);         // задаем канал преима/передачи
if (mirf_PAYLOAD!=0){
// настраиваем отправку данных фиксированной длинны
mirf_write_register(RX_PW_P0, mirf_PAYLOAD);             //length of incoming payload
mirf_write_register(FEATURE,(0 << EN_DPL) | (1<}else{
// настраиваем отправку данных произвольной длинны с автоподтверждением
mirf_write_register(FEATURE,(1 << EN_DPL) | (1<mirf_write_register(DYNPD, (1 << DPL_P0));               // включение произвольной длины для канала 0
}
mirf_write_register(CONFIG, (1 << EN_CRC) | (1 << CRCO) | (1 << PWR_UP) | (1 << PRIM_RX));   // Включение CRC, питания и переход на прием

mirf_setRX; // rx mode
_delay_ms(20);
mirf_CE_hi;{/code}

Машинка в сборе выглядит так:

Машинка в сборе

Внешний вид

Вид снизу

Немножко видео о том, что вышло в итоге:

Что можно еще улучшить:

 

  • Поставить в разрых питания H-моста полевик, чтобы снизить потребление приемника. Сейчас во схе вся схема потребяется 13ма, все это жрет именно H-мост для ходового двигателя.
  • Переделать плату в пульте (передатчик), чтобы он закрывался плотно.
  • Сделать задние стоп-сигналы, запаралелить их с фарами.

 

Использовались следующие ссылки по теме:

http://aterlux.ru/index.php?page=article&art=nrf24l01p#COMMANDS

https://openservo.org/Schematic2?action=AttachFile&do=view&target=openservo_2.1_schematic.pdf

http://kazus.ru/forums/showthread.php?p=1093653#post1093653

Комментарии   

#1 aleks0306 09.03.2017 21:22
скачать где
#3 Dmitrylex 01.03.2024 19:43
Привет всем! Я наткнулся на интересное фото флага фашистской Германии и хотел поделиться с вами. Флаг фашистской Германии фото: https://travelfoto.co Этот флаг вызывает много эмоций и вопросов. Некоторые считают его символом нацизма и зла, в то время как другие считают его историческим артефактом, который помогает нам понять прошлое. Что вы думаете? Какие ассоциации вызывает у вас этот флаг? Поделитесь своими мыслями и мнениями!
#4 ElliottEmoli 03.03.2024 21:13
How can I explain the discrepancy between the reported memory usage and the actual memory consumption of a game on my PC? My PC has 16 GB of RAM, but when I run a game that uses 5 GB, the task manager shows that 80% of the memory is being used. What are the other factors that affect the memory usage?

https://technsight.com/:
#5 hierycorjoiff 06.03.2024 01:27
Привет!

Так случилось, что моя двоюродная сестра нашла у Вас интересного мужчину и вышла за него замуж ^_^

Неужели здесь есть красивые люди! ;) Я Изабелла, мне 26 лет.
Я работаю моделью, преуспеваю - надеюсь, и вы тоже! Хотя, если вы очень хороши в постели, то вы вне очереди!)))
Поставьте лайк мне здесь, плз: @topsecret7847: https://bit.ly/42OUc1a (если жена рядом, не щелкай! :D)
Кстати, секса давно не было, найти достойного очень сложно...

И нет! Я не проститутка! Я предпочитаю гармоничные, теплые и надежные отношения. Я вкусно готовлю и не только ;) У меня ученая степень в области маркетинга.

Моя фотография:
https://i.ibb.co/hBVyhq4/00131-483565854.png: https://bit.ly/42OUc1a

P.S live:i2JpMMlvzy CGRbRLi4iI
P.S Еще обо мне: Ищу достойного мужчину!: https://yougig.co/img_20200127_114953/#comment-190756 Ищу достойного мужчину!: http://consproxil.com/ Ищу достойного мужчину!: https://cpamafia.pro/threads/ischu-dostojnogo-muzhchinu.12003/ 6514eee
#6 Davidsop 13.03.2024 20:18
Привет, друзья. Обращаюсь к вам за советом по выбору портативного ЦАП/усилителя для наушников. Моя цель - улучшить звучание и сделать прослушивание музыки более приятным, когда я вне дома.
Один из основных вопросов для меня - это выбор чипа ЦАП. AKM, ESS, ROHM и прочие... Какой производитель ЦАП, по вашему мнению, предлагает лучшие характеристики? Я слышал много положительных отзывов о различных компаниях, но мне было бы интересно услышать мнение обычных пользователей, чтобы сделать верный выбор.
На одном из аудиофильских форумов мне порекомендовали такой вариантhttps:// hifi-port.ru/th reads/shanling- h2-portativnyj- bluetooth-cap-u silitel-na-cs43 198.2659/. Буду признателен за ваши комментарии и советы на эту тему. Давайте совместно создадим дружественную и информативную атмосферу, где мы сможем обмениваться мнениями и опытом.
https://hifi-port.ru/threads/fiio-k9-akm-nastolnyj-cap-usilitel-na-ak4499ex.2660/ Также меня заботит наличие 4,4 мм разъема. Многие ЦАПоуси имеют эту возможность, но стоит ли мне обращать на это внимание и переплачивать за неё? Есть ли какие-то плюсы от использования данного разъема?

Добавить комментарий

Защитный код
Обновить

Обсудить эту статью на форуме (17 ответов).

Copyright 2019 © simple-devices.ru.
При использовании материалов ссылка на simple-devices.ru обязательна.