私は、Pythonを使用してリモート制御され、単純なGUIを介してインターネット経由で制御メッセージを送信するロボットを構築中です。
私は自分のコードの一部、GUIと制御システムをかなりうまく機能させましたが、行き詰まっています。視差pingセンサーを使用してArduinoMegaからオブジェクト情報までの距離を取得し、その値をPython制御スクリプトに送信してリモートGUIに表示しようとしています。
私が抱えている主な問題は、すでに確立されているCOMポートを使用するPythonコードをArduinoと統合し、メッセージを送信してArduinoにpingセンサーをポーリングし、値を受け取るPythonプログラムに送信する方法です。次に、その値をGUIに挿入します。
私はすでにArduinoを制御するためのこのコードを持っており、それは私のシンプルなGUIで機能します。
import serial
ser = serial.Serial('/dev/ttyUSB0', 9600)
from PythonCard import model
class MainWindow(model.Background):
def on_SpdBtn_mouseClick(self, event):
spd = self.components.SpdSpin.value
def on_FBtn_mouseClick(self, event):
spd = self.components.SpdSpin.value
ser.write('@')
ser.write('F')
ser.write(chr(spd))
def on_BBtn_mouseClick(self, event):
spd = self.components.SpdSpin.value
ser.write('@')
ser.write('B')
ser.write(chr(spd))
def on_LBtn_mouseClick(self, event):
spd = self.components.SpdSpin.value
ser.write('@')
ser.write('L')
ser.write(chr(spd))
def on_RBtn_mouseClick(self, event):
spd = self.components.SpdSpin.value
ser.write('@')
ser.write('R')
ser.write(chr(spd))
def on_SBtn_mouseClick(self, event):
spd = self.components.SpdSpin.value
ser.write('@')
ser.write('S')
ser.write('0')
def on_PngDisBtn_mouseClick(self, event):
ser.write('~')
ser.write('P1')
ser.write('p2')
app = model.Application(MainWindow)
app.MainLoop()
私が本当にやりたいのは、上記のコードを改善し、クリックするボタンを追加して、Pythonにメッセージを送信してpingセンサーをチェックして値を返すように指示することです。私はArduinoコードに非常に精通していますが、この2週間でPythonを使い始めたばかりです。