Отправка данных через соединение UDP (мост)
Мне было поручено создать концептуальное доказательство с помощью Arduino Mega + Yun Shield. Я начал с примера Bridge, и я могу читать свои датчики и открывать данные через REST.
Но вместо REST я хочу отправлять пакеты через UDP. Я знаю, что в Интернете есть примеры про UDP, но я не нашел ничего, что использовало бы UDP с Bridge.
Это возможно?
ОБНОВЛЕНИЕ № 1
Хорошо, я где-то читал, что это невозможно. Но я также читал, что можно запустить скрипт Python для отправки данных через UDP.
Я сделал этот скрипт:
import socket
import sys
# Create a UDP socket
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
server_address = ('192.168.1.100', 9050)
message = 'This is the message. It will be repeated.'
try:
# Send data
print >>sys.stderr, 'sending "%s"' % message
sent = sock.sendto(message, server_address)
finally:
print >>sys.stderr, 'closing socket'
sock.close()
И назовите это из Arduino так:
Process p;
p.begin("python");
p.addParameter("/test/sendUDP.py");
p.run();
Код запускается без ошибок, по-видимому, но мой UDP-сервер ничего не получает. Тем не менее, это работает с PuTTY.
ОБНОВЛЕНИЕ № 2 Это работает! Я изменил эту строку:
p.addParameter("/root/test/sendUDP.py");
1 ответ
Решение
Я изменил эту строку, и она работает как шарм:
p.addParameter("/root/test/sendUDP.py");