54 lines
1.0 KiB
Python
54 lines
1.0 KiB
Python
import serial
|
|
import time
|
|
|
|
class NexusRobot:
|
|
|
|
def __init__(self, port):
|
|
self.ser = serial.serial_for_url(port, 9600, do_not_open = True)
|
|
self.ser.open()
|
|
time.sleep(3)
|
|
|
|
def _wait(self):
|
|
self.ser.readline()
|
|
self.ser.readline()
|
|
|
|
def pause(self):
|
|
time.sleep(1)
|
|
|
|
def forward(self, speed, dist):
|
|
self.ser.write("g%d,%d;" % (speed, dist))
|
|
self._wait()
|
|
|
|
def reverse(self, speed, dist):
|
|
self.ser.write("b%d,%d;" % (speed, dist))
|
|
self._wait()
|
|
|
|
def turnRight(self, speed, angle):
|
|
self.ser.write("rr%d,%d;" % (speed, angle))
|
|
self._wait()
|
|
|
|
def turnLeft(self, speed, angle):
|
|
self.ser.write("rl%d,%d;" % (speed, angle))
|
|
self._wait()
|
|
|
|
|
|
|
|
|
|
|
|
robot = NexusRobot('/dev/cu.usbserial-AL00YYCA')
|
|
robot.forward(200,10)
|
|
robot.pause()
|
|
robot.turnRight(200,90)
|
|
robot.pause()
|
|
robot.forward(200,10)
|
|
robot.pause()
|
|
robot.turnRight(200,90)
|
|
robot.pause()
|
|
robot.forward(200,10)
|
|
robot.pause()
|
|
robot.turnRight(200,90)
|
|
robot.pause()
|
|
robot.forward(200,10)
|
|
robot.pause()
|
|
robot.turnRight(200,90)
|
|
robot.pause() |