admin

Простое радиоуправление на NRF24L01+PA+LNA. Приемник

53 сообщения в этой теме

edar    3

С фюзами разобрался. В AVRdudeprog фюзы устанавливаются как для Ponyprog. Так, что - калькулятор фюзов для Ponyprog, убрано деление частоты на 8, как и  рекомендовано в статье. контрольная проверка инверсия или нет по состоянию spien. Все в порядке. Разберусь с прошивкой Usbasp со временем и перешью. Сейчас - передатчик. Жду радиомодули из Китая. Спасибо большое за оказанное внимание. Об успехах обязательно отпишусь.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
edar    3

Ув. zeconir, получил, подключил. Связь - есть, контроль  питания -  есть , пропорциональные каналы - функционируют. Дискретные каналы SW не реагируют. Прошивка не инверсная, а транзисторы при этом в исходном  состоянии открыты (выход с МК  5v)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Впервые на русском языке! Работаем с микроконтроллерами STM32F7(на основе STM32F7 Online Training)

Цикл материалов на основе STM32F7 Online Training от компании STMicroelectronics. Описаны функциональные блоки и инструменты разработки для семейства микроконтроллеров STM32F7, охватывающие тематику системной периферии, памяти, безопасности, аналоговой периферии, цифровой периферии, таймеров, экосистемы.

Подробнее>>

edar    3

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
zeconir    116

@edar Все, посмотрел и разобрался в чем была причина неработоспособности каналов без инверсии. Оказалось, что я проверял на условие "инверсию" И данные с пульта, благодаря чему и не было реакции. Все исправил + мне товарищ предлагал сделать настройки (адрес, канал + еще мелочь) в eeprom, дабы не прошивать каждый раз чип, что я собственно и сделал. По-умолчанию, настройки идентичны тем, что были зашиты в прошивку, и с пультом работать будет сразу.

В eeprom следующая информация:

инверсия выходов цифровых (20-й байт), положение рулевых машинок по-умолчанию (1 - 2000) (22 - 23-й байты, 24 - 25-й байты), адрес передачи - приема (10 - 15-й байты, 16 - 19-й байты), канал (21-й байт). Если есть желание что-то поменять (к примеру, собираете пару моделей для себя и друзей, с возможностью запуска одновременно), то можно посчитать необходимые числа через калькулятор winodows (dec - hex), или либой другой с этой функцией (ну, и естественно, при вариант без калькулятора xD).

Прошивка для приемника: RadioControl_M(Receiver).hex , проверяйте.

*На сайте обновлю позже, нужно еще пульт (передатчик) подправить на eeprom.

Изменено пользователем zeconir

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
edar    3

Ув. @zeconir  , помогите пожалуйста изменить в программе начальное положение рулевой машинки Ry. Дело в том, что из-за этого не происходит начальная инициализация регулятора коллекторного двигателя при включении. Инициализация  регулятора при  меньшей длительности импульса проходит успешно (проверял сервотестером). Как изменить значения? Не смог разобраться.

   Байты начального положения рулевых машинок. 22,23 и 24,25  не одинаковы?

Извините за дилетантские вопросы. Заранее благодарен.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
zeconir    116

В общем, смотрите. По-умолчанию, как писал ранее (а может быть и в статье, не помню), сервы выставляются в "0" импульсом длительность 1,5 мс. Это число записывается в ячейки 22-23 и 24-25, для первой и второй сервы соответственно. Чтобы изменить длительность импульса, нужно записать в эти ячейки число, соответствующее длительность импульса в мкс (1,5 мс = 1500 мкс).

Берете Windows калькулятор, или другой любой, к примеру какой-нибудь онлайн конвертер DEC - HEX. Вбиваете нужную вам длительность импульса (не забываем, не менее 1000 и не более 2000) в мкс, и получившийся результат заносим в eeprom младшим байтом вперед.

01.PNG.267687232b56a1903cd7c25342d8c7d9.PNG02.PNG.f8399b5baee1b1c28bac7d26c4e458a0.PNG

0x05DC записываем в eeprom как DC (22 ячейка) 05(23 ячейка), 24-25 заполняем по аналогии, если это требуется.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
edar    3

@zeconir , однако замечательная Khazama AVR Programmer без функции редактирования. 

Посоветуйте, какой программой это возможно сделать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
zeconir    116

@edar Считываете дамп EEPROM через Khazama , копируете его куда-нибудь, к примеру в Notepad++, редактируете, сохраняете как .eep . Потом этот файл загоняете в контроллер через Khazama.

Логика однако =)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
edar    3

@zeconir , редактором Notepad++ изменил положение обеих рулевых машинок - 1400 мс.  В редакторе нет опции  сохранения файла с расширением  .eep. 

При попытке отредактированный файл загрузить с расширением .hex Khazama выдает сообщение о несовпадении  контрольной суммы.

kor100.hex

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
zeconir    116

Обновленная прошивка для передатчика и приемника. Биты конфигурации те же, что и были (все по-умолчанию, только генератор внутренний, на 8МГц).
NewBuild_21.11.2018.rar

 

@edar Попробуйте AVRDUDE_PROG.

*Прошу прощения за такой длительный "оффлайн". Ваш пост прочитал, хотел ответить, а потом закрутился и забыл про него =(  На форум особо не заходил - некогда, и в итоге почти два месяца промолчал =(

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
zeconir    116

Новый билд прошивки.

Что добавлено:

- Возможность установки произвольных пределов длительности импульсов управления для сервы, независимо для обоих пропорциональных каналов. Данные находятся в ячейках eeprom по адресам: нижний предел первого канала (26 - 27 байт), верхний предел первого канала (28 - 29 байт), нижний предел второго канала (30 - 31 байт), верхний предел второго канала (32 - 33 байт).

NewBuild_22.11.2018.rar

Изменено пользователем zeconir

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
edar    3

Спасибо за ответ. Временно, аппаратным путем, решил проблему с инициализацией регулятора изменением

уровня  нейтрального положения сигнала передатчика. Попробую, отпишусь.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
heroj    0
В 22.11.2018 в 15:51, zeconir сказал:

Новый билд прошивки.

Что добавлено:

- Возможность установки произвольных пределов длительности импульсов управления для сервы, независимо для обоих пропорциональных каналов. Данные находятся в ячейках eeprom по адресам: нижний предел первого канала (26 - 27 байт), верхний предел первого канала (28 - 29 байт), нижний предел второго канала (30 - 31 байт), верхний предел второго канала (32 - 33 байт).

NewBuild_22.11.2018.rar

Доброго времени суток! Повторил  данное устройство (прошивки NewBuild_22.11.2018.rar) - все работает хорошо. Согласно описанию в статье приемник настроен на работу от батареи 2S, и я могу изменить значения на какие мне угодно, поскольку есть исходник т.д. Но насколько я понимаю исходники не соответствуют последним прошивкам. Если я прав, то можно выложить актуальные исходники (для NewBuild_22.11.2018.rar). Мой приемник работает от батареи 3S. И еще такое - когда связь теряется (села батарея в передатчике и т.п.) то моторы работают дальше и мой, к примеру кораблик, уплывет кто знает куда)). Возможно сделать остановку моторов при потере связи. Заранее спасибо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
ALEX1981    0
В 18.01.2019 в 10:36, heroj сказал:

Доброго времени суток! Повторил  данное устройство (прошивки NewBuild_22.11.2018.rar) - все работает хорошо. Согласно описанию в статье приемник настроен на работу от батареи 2S, и я могу изменить значения на какие мне угодно, поскольку есть исходник т.д. Но насколько я понимаю исходники не соответствуют последним прошивкам. Если я прав, то можно выложить актуальные исходники (для NewBuild_22.11.2018.rar). Мой приемник работает от батареи 3S. И еще такое - когда связь теряется (села батарея в передатчике и т.п.) то моторы работают дальше и мой, к примеру кораблик, уплывет кто знает куда)). Возможно сделать остановку моторов при потере связи. Заранее спасибо.

Поддерживаю !!!

Изменено пользователем ALEX1981

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
ALEX1981    0
В 22.11.2018 в 16:51, zeconir сказал:

Новый билд прошивки.

Что добавлено:

- Возможность установки произвольных пределов длительности импульсов управления для сервы, независимо для обоих пропорциональных каналов. Данные находятся в ячейках eeprom по адресам: нижний предел первого канала (26 - 27 байт), верхний предел первого канала (28 - 29 байт), нижний предел второго канала (30 - 31 байт), верхний предел второго канала (32 - 33 байт).

NewBuild_22.11.2018.rar

Добрый день. Хороший проект. Подскажите, в прошивке предусмотрена установка ограничения угла поворота механизма сервопривода? Как я понял, в настройках епром есть только настройка начального положения механизма сервопривода.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
zeconir    116

@heroj @ALEX1981 Добрый день. Завтра выложу исходники. По отключению двигателей - вопрос спорный, так как я не помню, что там с памятью в контроллере, посмотрю. Насчет минимального/максимального угла поворота - то же не помню, нужно смотреть.

Upd. @ALEX1981  Да, есть ограничение угла поворота. Но не прямое, а косвенное, так сказать. Вообще-то это задумывалось как обеспечение универсальности для различных типов сервоприводов, но и для ограничения максимального угла поворота тоже может использоваться. Придется только подобрать экспериментально значения. Это как раз последнее процитированное вами сообщение.

Изменено пользователем zeconir
Дополнение

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ваша публикация должна быть проверена модератором

Гость
Вы не авторизованы. Если у вас есть аккаунт, пожалуйста, войдите.
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Восстановить форматирование

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Загрузка...