SunFounder PiDog Kit, Release 1.0
#!/usr/bin/env python3
from time import sleep
from pidog import Pidog
import readchar
from preset_actions import
*
import os
my_dog = Pidog()
sleep(0.5)
usage = '''
Keyboard Control Ctrl + C to Exit
...
'''
SIT_HEAD_PITCH = -40
STAND_HEAD_PITCH = 0
STATUS_STAND = 0
STATUS_SIT = 1
STATUS_LIE = 2
HEAD_SPEED = 80
HEAD_ANGLE = 20
head_yrp = [0, 0, 0]
head_pitch_init = 0
command = None
current_status = STATUS_LIE
def set_head(roll=None, pitch=None, yaw=None):
global head_yrp
if roll is not None:
head_yrp[1] = roll
if pitch is not None:
head_yrp[2] = pitch
if yaw is not None:
head_yrp[0] = yaw
my_dog.head_move([head_yrp], immediately=True, speed=HEAD_SPEED)
COMMANDS = {
"forward": {
"commands": ["forward"],
"function": lambda: my_dog.do_action('forward', wait=False, speed=98),
"status": STATUS_STAND,
"head_pitch": STAND_HEAD_PITCH,
},
"backward": {
"commands": ["backward"],
"function": lambda: my_dog.do_action('backward', wait=False, speed=98),
"status": STATUS_STAND,
"head_pitch": STAND_HEAD_PITCH,
},
"turn left": {
"commands": ["turn left"],
"function": lambda: my_dog.do_action('turn_left', wait=False, speed=98),
(continues on next page)
2.2. Funny Project 65