X-Git-Url: https://defiant.homedns.org/gitweb/?p=ros_wild_thumper.git;a=blobdiff_plain;f=scripts%2Fengine_man_test.py;fp=scripts%2Fengine_man_test.py;h=ae639ae74af2a555e34471d1962eea11dd9562c3;hp=0000000000000000000000000000000000000000;hb=3bc8d7f92277a953cfcee5781d5875f040d7f028;hpb=1d95fd8a372e93eafd14666c0145b8afcbc14700 diff --git a/scripts/engine_man_test.py b/scripts/engine_man_test.py new file mode 100755 index 0000000..ae639ae --- /dev/null +++ b/scripts/engine_man_test.py @@ -0,0 +1,27 @@ +#!/usr/bin/env python +# -*- coding: iso-8859-15 -*- + +import sys +import struct +from time import sleep +from i2c import i2c_write_reg, i2c_read_reg + + +def set_pwm(left, right): + i2c_write_reg(0x50, 0x1, struct.pack(">h", left)) + i2c_write_reg(0x50, 0x3, struct.pack(">h", left)) + i2c_write_reg(0x50, 0x5, struct.pack(">h", right)) + i2c_write_reg(0x50, 0x7, struct.pack(">h", right)) + +if __name__ == "__main__": + set_pwm(int(sys.argv[1]), int(sys.argv[2])) + + while True: + motor1, = struct.unpack(">B", i2c_read_reg(0x50, 0x2, 1)) + motor2, = struct.unpack(">B", i2c_read_reg(0x50, 0x4, 1)) + motor3, = struct.unpack(">B", i2c_read_reg(0x50, 0x6, 1)) + motor4, = struct.unpack(">B", i2c_read_reg(0x50, 0x8, 1)) + speed1, speed2, speed3, speed4 = struct.unpack(">hhhh", i2c_read_reg(0x50, 0x30, 8)) + error, = struct.unpack(">B", i2c_read_reg(0x50, 0xA1, 1)) + print "PWM:", motor1, motor2, motor3, motor4, "Speed:", speed1, speed2, speed3, speed4, "Error:", error + sleep(0.1)