Raspberry and Arduino

Тема в разделе "Raspberry Pi", создана пользователем Nigga, 25 янв 2016.

  1. Nigga

    Nigga Нуб

    Помогите наладить связь между малинкой и ардуинкой.
    Цель такова: Я подаю сигнал по WiFi (с компа, мб через пути или подскажите как можно), малинка его принимает и сразуже передает его на ардуино, а ардуинка уже сама решает что делать, при получении нужного сигнала.
    Помогите, подтолкните в нужном направлении или ткните носом в туториал
    гуглить пытался, ничего внятного не нашел
     
  2. Alex19

    Alex19 Гуру

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

    1. С компьютера подается сигнал, раз WiFi протоколы на выбор UPD/TCP. Вы пишите приложение для управления Raspberry, оно может быть написано на чем угодно C++, C#, Python, Processing.
    Благо примеров для любого языка предостаточно, Вы на каком пишите?

    2. Дальше Вы пишите программку для Raspberry, которая будет принимать данные по UPD/TCP от компьютера и отправлять данные на Arduino.

    Возникает вопрос как подключить Raspberry и Arduino, вариантов множество Ethernet/WiFi/UART/I2C/SPI и т.д., выбирается в зависимости от задачи и предпочтений. На чем Вы остановились?

    Данную программу можно написать на C++, Python и т.д.
    Вы на каком пишите?

    3. Arduino принимает данные по какому-то варианту передачи данных и что-то делает.

    Вот пример передачи данных от Raspberry к Arduino по сети на Python по UPD
    http://www.toptechboy.com/tutorial/...le-client-server-configuration-over-ethernet/.
    http://www.toptechboy.com/tutorial/...-17-sending-and-receiving-data-over-ethernet/

    Вот пример передачи данных от Raspberry к Arduino на Python через UART.
    http://blog.oscarliang.net/raspberry-pi-and-arduino-connected-serial-gpio/
    Там только соединения через резисторы, мне не нравится пользуюсь Logic Level Converter
    [​IMG]
     
    Последнее редактирование: 25 янв 2016
  3. Nigga

    Nigga Нуб

    Не ожидал такого полного ответа, спасибо!
    Вы правильно поняли мою задачу. Я хотел бы подключить через UART, а вот на каком языке писать программки...
    Я знаю лишь Сиподобный ардуиновский язык. Так что, подскажить на каком языке удобней, или подкиньте любой подходящий пример. Мне главное выполнить мою задачу, а уже и потом буду учить понравившийся язык
     
  4. Alex19

    Alex19 Гуру

    Не за что, просто любую задачу проще разбить, на подзадачи, так она выглядит проще.

    Очень многое зависит от деталей задачи, когда мне понадобилось реализовать обмен между Arduino и Raspberry по UART, вышло, что лучший язык для меня JavaScript + Node.js.

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

    Мой совет Python и вот почему.
    1. На нем можно писать программу как на компьютере (передача данных на Raspberry), так и на самой Raspberry. Вам нужно будет 1 язык + знания ардуины, конечно это не единственный язык который существует и там и там.
    2. Большое кол-во обучающих материалов на русском языке (видимо, он сейчас в моде)
    К примеру видео для начинающих -

    .
    2.1. Очень много примеров работы с Raspberry, тот GPIO, UTP, UART.
    3. Его можно использовать и для серверной части веб приложений.
    4. Относительно не сложный.

    Это сугубо мое мне.

    Мечты, мечты:).

    Отбросим лирику, мало вероятно, что Вы найдете полный пример, решения Вашей задачи, сама задача не обычная (зачем вообще посредник в передаче данных, в роли которой выступает Raspberry).

    Но вот по частям без проблем.
    Передача данных от Raspberry к Arduino по UART, уже кидал.

    Как и работу Python с UDP (на Raspberry), добавлю еще одно описание на русском Python с UDP - https://imakemy.wordpress.com/2012/02/16/python-udp-прием-и-отправка/.

    На компьютере пишем программу, которая будет отправлять данные, на Raspberry которая принимает и отправляет в Serial.

    И да придется все таки хотя бы бегло ознакомится с языком, увы по другому ни как. Надеюсь информация будет полезна.

    P.S. Сам в перерывах делаю, нечто похожее, передачу с ардуины по UDP на сайт с сайта на другую ардуину по UART. Но все на JavaScript + Node.js.
     
    Securbond нравится это.