Unterstützung benötigen, serielle port-Kommunikation in Ruby
-
03-07-2019 - |
Frage
Ich brauche einige die Kommunikation über eine serielle Schnittstelle, die in Ruby.Aus meiner Forschung, es scheint, dass es nicht viele moderne Bibliotheken für die serielle Kommunikation und das neueste material, das ich finden kann, ist von 2006.Gibt es irgendwelche Edelsteine, ich bin mir nicht bewusst?
Ich letztlich halten müssen, um die Kommunikation mit einem seriellen Gerät an den USB-Anschluss (ich herausfinden können, ist der Anschluss kein problem) für die hin-und her-Kommunikation so (etwas Ruby-esque pseudo-code).
def serial_write_read
if serial.read == "READY"
serial.write "1"
until serial.read == "OK"
serial.write "5"
end
return when serial.read == "DONE"
end
end
Lösung
Die serielle port-Spezifikation hat sich nicht verändert, für immer, ich würde nicht sorgen über wie alt sind die Bibliotheken.
Ich nehme an, Sie sah diese Artikel aus dem Jahr 2006 über ruby und serielle ports
Hier s jemand, wer hat die Ruby-SerialPort Bibliothek dort genannten arbeiten auf macs in diesem Jahr.
Es gibt auch dieses alte post von ruby zu sprechen, über die Anbindung an die Win32-Serielle API.
Andere Tipps
Nur weil für Ruby-Serialport gesucht werden Sie manchmal hier führen:
toholio die GitHub Repo scheint nicht mehr aktiv zu sein (Stand 09/2010). Die veröffentlichte gem stammt aus
Während der serielle Standard hat sich nicht verändert, verändert die Art und Weise Ruby-Gems Interaktion mit Ruby-C-Erweiterungen genug über die Jahre, so dass die RubyForge seriellen Port-Erweiterung nicht gut spielen würde. Es gab, dass einige Patches im Laufe der Jahre auf RubyForge zu beheben, aber es ist nicht hübsch gewesen. Die gute Nachricht ist, dass Github hat eine unglaubliche Beschleunigung in der Aktivität erlaubt die Ruby-seriellen Port-Erweiterung, um aufzuräumen. Mindestens drei verschiedene Menschen sind Quer Verzweigung ihre serielle Schnittstelle Code auf Github. Sie können auf Github suchen, aber ich glaube, dass Toholio den neuesten Code hat, die rekodiert und neu verpackt die Ruby-serielle Schnittstelle als Ruby-Gem. (Ja!)
http://github.com/toholio/ruby-serialport/tree/master
Es funktioniert gut für mich auf Linux, den früheren Konflikt mit der neuesten Ruby-Gems-Release zu lösen. Unter Windows habe ich immer noch ein Problem bekommt es funktioniert. Ruby-Kompilieren-Erweiterungen unter Windows ist nicht sehr einfach, aber das ist eine ganze ‚nuther Dose Würmer. Ich bin einfach nur glücklich, dass die Leute wieder auf der Ruby serielle Schnittstelle Unterstützung arbeiten. Ich habe Toholio gebeten, ein Windows-Binary Juwel zu erzeugen, die alle Probleme lösen würden, und er sagt, dass es auf seiner Liste zu tun ist.