
Piarm, Release 1.0
(continued from previous page)
d: turn right
i: go up
k: go down
j: on
l: off
ESC: Quit
'''
def
readchar
():
fd
=
sys
.
stdin
.
fileno()
old_settings
=
termios
.
tcgetattr(fd)
try
:
tty
.
setraw(sys
.
stdin
.
fileno())
ch
=
sys
.
stdin
.
read(
1
)
finally
:
termios
.
tcsetattr(fd, termios
.
TCSADRAIN, old_settings)
return
ch
def
control
(key):
arm
.
speed
=
100
flag
=
False
alpha,beta,gamma
=
arm
.
servo_positions
status
=
""
if
key
==
'w'
:
alpha
+=
3
flag
=
True
elif
key
==
's'
:
alpha
-=
3
flag
=
True
if
key
==
'a'
:
gamma
+=
3
flag
=
True
elif
key
==
'd'
:
gamma
-=
3
flag
=
True
if
key
==
'i'
:
beta
+=
3
flag
=
True
elif
key
==
'k'
:
beta
-=
3
flag
=
True
if
key
==
'j'
:
arm
.
set_electromagnet(
'on'
)
elif
key
==
'l'
:
arm
.
set_electromagnet(
'off'
)
if
flag
==
True
:
arm
.
set_angle([alpha,beta,gamma])
(
'servo angles:
%s
, electromagnet status:
%s
'
%
(arm
.
servo_positions,
˓
→
status))
if
__name__
==
"__main__"
:
(continues on next page)
128
Chapter 4. Play with Python
Summary of Contents for PiArm
Page 1: ...Piarm Release 1 0 www sunfounder com Mar 31 2022 ...
Page 2: ......
Page 4: ...ii ...
Page 6: ...Piarm Release 1 0 2 CONTENTS ...
Page 8: ...Piarm Release 1 0 4 Chapter 1 Component List and Assembly Instructions ...
Page 48: ...Piarm Release 1 0 44 Chapter 3 Play with Ezblock ...
Page 91: ...Piarm Release 1 0 3 9 GAME Iron Collection 87 ...
Page 92: ...Piarm Release 1 0 88 Chapter 3 Play with Ezblock ...
Page 99: ...Piarm Release 1 0 Step 7 Click the WRITE button 4 1 Quick Guide on Python 95 ...
Page 148: ...Piarm Release 1 0 Yes then Ok Finish 144 Chapter 5 Appendix ...
Page 152: ...Piarm Release 1 0 Step 4 Double click the connection just created 148 Chapter 5 Appendix ...
Page 160: ...Piarm Release 1 0 156 Chapter 5 Appendix ...