fischertechnik и arduino

Обсуждаем модели и конструкции, построенные своими руками
Ответить
Muaed
Сообщения: 38
Зарегистрирован: 19 окт 2021, 12:38

fischertechnik и arduino

Сообщение Muaed »

Использование датчиков от ардуино.
Кто смог соединить физически Ардуино и Robopro TXT, а также передал команд в с ТХТ на Ардуино пожалуйста откликнитесь!!!
Подскажите в какую сторону капать.
Аватара пользователя
Mr.Kubikus
Сотрудник ПАКПАК
Сообщения: 1019
Зарегистрирован: 22 окт 2010, 23:57

Re: fischertechnik и arduino

Сообщение Mr.Kubikus »

Привет!

Уточните, пожалуйста, как вы хотите управлять Arduino? Какое ПО работает на стороне TXT? Вам нужен доступ из программы, написанной в ROBO Pro?

Я вижу минимум пять вариантов:
1. Соединить дискртеные входы/выходы TXT c выходами/входами Arduino. Управлять дискртеыми сигналами. Хотя можно и аналоговыми тоже
2. Подключить Arduino в режиме I2C Slave к разъему EXT в TXT
3. Подключить последовательный интрефейс UART Arduino к интерфейсу UART через разъем EXT в TXT
4. Использовать WIFI шилд Arduino и связать его с TXT через IP
5. Подключить Arduino к интерфейсу USB Host в TXT и работать в Linux с /dev/ttyACM0
С уважением, Григорий
GitHub FB ВК
Muaed
Сообщения: 38
Зарегистрирован: 19 окт 2021, 12:38

Re: fischertechnik и arduino

Сообщение Muaed »

Привет!
Контроллер ТХТ для обработки данных.
Ардуино для сбора данных с датчиков.
Пока с помощью Robo pro, a потом на си.
UART у Ардуино и ТХТ по уровню сигнала
совпадают? Можно их прямо соединить?

С уважением, Муаед.
Аватара пользователя
Mr.Kubikus
Сотрудник ПАКПАК
Сообщения: 1019
Зарегистрирован: 22 окт 2010, 23:57

Re: fischertechnik и arduino

Сообщение Mr.Kubikus »

Забыл еще один вариант - подключить Arduino к интерфейсу USB Host в TXT. Тогда в Linux появится последовательный порт \dev\ttyACM0, через который можно обмениваться данными с Arduino.
Вот лог после подключения Arduino Leonardo:

Код: Выделить всё

[  786.427779] usb 1-1: new full-speed USB device number 7 using musb-hdrc
[  786.554795] usb 1-1: New USB device found, idVendor=2341, idProduct=0036
[  786.554832] usb 1-1: New USB device strings: Mfr=2, Product=1, SerialNumber=0
[  786.554851] usb 1-1: Product: Arduino Leonardo
[  786.554869] usb 1-1: Manufacturer: Arduino LLC
[  786.564521] cdc_acm 1-1:1.0: ttyACM0: USB ACM device
Какой из вариантов вам больше нравится?

По поводу UART:
UART у Ардуино и ТХТ по уровню сигнала
совпадают? Можно их прямо соединить?
На интерфейсе UART в TXT уровню лог "1" соответствует напряжение 3,3 В. Соответственно напрямую можно подключать только те модели Ardunio, у которых напряжение на интерфейсе составляет 3,3 В, например, Arduino Due. Также надо отметить, что на интерфейс UART в TXT выведена консоль ОС Linux. Поэтому чтобы использовать этот интерфейс для решения собственных задач надо в настройках ядра Linux отключить консоль от этого порта. Возможно, что это не самый простой вариант для организации обмена данными.

По поводу I2C:
Я считаю, что для вашей задачи лучше всего подходит вериант обмена данными через шину I2C. Для этого в ROBO Pro уже есть библиотечные блоки и примеры. Для Arduino тоже есть готовая библиотека. Попробуем реализовать такой вариант?
С уважением, Григорий
GitHub FB ВК
Muaed
Сообщения: 38
Зарегистрирован: 19 окт 2021, 12:38

Re: fischertechnik и arduino

Сообщение Muaed »

У ТХТ на I2C 3,3в а на Ардуино 5в.
Как согласовать эти выводы?
Аватара пользователя
Mr.Kubikus
Сотрудник ПАКПАК
Сообщения: 1019
Зарегистрирован: 22 окт 2010, 23:57

Re: fischertechnik и arduino

Сообщение Mr.Kubikus »

Как согласовать эти выводы?
Можно использовать готовый преобразователь уровня логических сигналов 3.3В - 5В или собрать самому из полевых транзисторов или PCA9306.
С уважением, Григорий
GitHub FB ВК
AntonEngineer
Сообщения: 42
Зарегистрирован: 10 дек 2019, 18:13

Re: fischertechnik и arduino

Сообщение AntonEngineer »

Здравствуйте! Для изучения работы интерфейсной шины I2C, я собрал тестовый стенд:
photo_2021-11-11_18-44-07.jpg
photo_2021-11-11_18-44-07.jpg (173.65 КБ) 5821 просмотр
Тестовый стенд состоит из:
1. Arduino Uno
2. Контроллер TXT
3. Лампа на 9В
4. Макетная плата, на которой расположен преобразователь уровня логических сигналов 3.3В - 5В
5. Светодиод с резистором
6. Кнопка, подключенная к Arduino
7. Кнопка, подключенная к TXT
8. Блок питания для TXT
circuit.jpg
circuit.jpg (184.24 КБ) 5821 просмотр
Контроллер TXT выполняет роль ведущего устройства, Arduino в свою очередь роль подчинённого устройства.
Работа стенда заключается в следующем:
1. При нажатии кнопки на стороне Arduino загорается лампа на стороне TXT;
2. При нажатии кнопки на стороне TXT загорается светодиод на стороне Arduino.

Скетч для Arduino и программа для ROBOPro:
master and slave.zip
(3.36 КБ) 255 скачиваний
Muaed
Сообщения: 38
Зарегистрирован: 19 окт 2021, 12:38

Re: fischertechnik и arduino

Сообщение Muaed »

Спасибо!!!!!!!!!!!!!!!!!!!!!!!

С уважением, Муаед.
Аватара пользователя
Mr.Kubikus
Сотрудник ПАКПАК
Сообщения: 1019
Зарегистрирован: 22 окт 2010, 23:57

Re: fischertechnik и arduino

Сообщение Mr.Kubikus »

Хочу дополнить представленный проект осциллограммами, которые показывают длительность задержки отклика при передаче информации через шину I2C между контроллером TXT и платой Arduinio UNO при тактовой частоте на шине 100 кГц:

Команда от кнопки Arduino (канал 1) к лампе TXT (канал 2):
arduino-txt.png
arduino-txt.png (5.35 КБ) 5711 просмотров

Команда от кнопки TXT (канал 1) к светодиоду Arduino (канал 2):
txt-arduino.png
txt-arduino.png (15.3 КБ) 5711 просмотров
Видно, что задержка составляет 16-17 мс.
С уважением, Григорий
GitHub FB ВК
Ответить