Das hier gezeigte erste Testsetup:
- Simuliert von Seiten des Arduinos als Aktio das eventabhängige Absetzen eines Status via Serial.println (statt eines Messwerts ist hier einfach nur ein zeitabhängiger Trigger verbaut).
- Auf Seiten des Rubyscripts als Reaktio eine einfache Quittierung über puts.
Arduino-Script:
void setup() { Serial.begin(9600); } void loop() { Serial.println("a"); delay(5000); Serial.println("b"); delay(5000); }
Ruby-Script
#simplest ruby program to read from arduino serial, #using the SerialPort gem #(http://rubygems.org/gems/serialport) require "rubygems" require "serialport" #params for serial port port_str = "/dev/tty.usbmodem411" #may be different for you baud_rate = 9600 data_bits = 8 stop_bits = 1 parity = SerialPort::NONE sp = SerialPort.new(port_str, baud_rate, data_bits, stop_bits, parity) #just read forever while true do sp_string = sp.gets puts sp_string if sp_string.to_s =~ /a/ then puts "A empfangen" elsif sp_string.to_s =~ /b/ then puts "B empfangen" end end sp.close #see note 1
Keine Kommentare:
Kommentar veröffentlichen