调教小龟玩法分享

调教小龟是一个比较适合初学者来学习编程技巧的玩法。
玩法也比较简单:拍小龟小车尾部,小车前进,拍小龟小车前部,小车后退。
先欣赏一下视频


接下来,小龟和大家分享一下实现代码。

#调慢小车速度
car.speed(10)

#获取传感器信息
def sensor():
x, y, z = car.sensor.acce()
#翻转车身中止程序功能
if z < -900: raise BaseException("翻转车身停止")
return x

#开始游戏
while True:
#记录小车的初始姿态
org_x = sensor()
while True:
#计算和初始姿态的变化幅度
x = sensor() / 2 - org_x
#变化幅度大,则视为发生用户拍击
if abs(x)>30: break
#变化幅度小,则视为正常的数据干扰浮动,并同步更新为新的初始姿态
org_x = x

#执行对应的动作
if x>0:
car.go(1)
else:
car.back(1)
sleep(0.5)

这里唯一有一个注意点就是小车姿态传感器每次采样差不多也得个十几毫秒,如果手碰小车速度过快时间过短的话,容易被姿态传感器误判。