28
28
# GPIO
29
29
# motors
30
30
PIN_MOTOR_ENABLE = 22
31
- PIN_LEFT_FORWARD = 24
32
- PIN_LEFT_BACKWARD = 25
33
- PIN_RIGHT_FORWARD = 17
34
- PIN_RIGHT_BACKWARD = 4
31
+ PIN_LEFT_FORWARD = 25
32
+ PIN_LEFT_BACKWARD = 24
33
+ PIN_RIGHT_FORWARD = 4
34
+ PIN_RIGHT_BACKWARD = 17
35
35
#?
36
36
PIN_PUSHBUTTON = 11
37
37
# servo
@@ -96,7 +96,7 @@ def __init__(self, motor_trim_factor=1.0, encoder=True):
96
96
except IOError :
97
97
logging .info ("MPU not available" )
98
98
99
- self .stop ()
99
+ # self.stop()
100
100
self ._is_moving = False
101
101
102
102
the_bot = None
@@ -114,35 +114,35 @@ def get_instance(cls, servo=False, motor_trim_factor=1.0):
114
114
cls .the_bot = CoderBot (servo , motor_trim_factor )
115
115
return cls .the_bot
116
116
117
- def move (self , speed = 100 , elapse = - 1 ):
117
+ def move (self , speed = 100 , time_elapse = 0 , target_distance = 0 ):
118
118
speed_left = min (100 , max (- 100 , speed * self ._motor_trim_factor ))
119
119
speed_right = min (100 , max (- 100 , speed / self ._motor_trim_factor ))
120
- self .motor_control (speed_left = speed_left , speed_right = speed_right , elapse = elapse )
120
+ self .motor_control (speed_left = speed_left , speed_right = speed_right , time_elapse = time_elapse , target_distance = target_distance )
121
121
122
- def turn (self , speed = 100 , elapse = - 1 ):
122
+ def turn (self , speed = 100 , time_elapse = 0 ):
123
123
speed_left = min (100 , max (- 100 , speed * self ._motor_trim_factor ))
124
124
speed_right = - min (100 , max (- 100 , speed / self ._motor_trim_factor ))
125
- self .motor_control (speed_left = speed_left , speed_right = speed_right , elapse = elapse )
125
+ self .motor_control (speed_left = speed_left , speed_right = speed_right , time_elapse = time_elapse )
126
126
127
127
def turn_angle (self , speed = 100 , angle = 0 ):
128
128
z = self ._ag .get_gyro_data ()['z' ]
129
- self .turn (speed , elapse = - 1 )
129
+ self .turn (speed , time_elapse = 0 )
130
130
while abs (z - self ._ag .get_gyro_data ()['z' ]) < angle :
131
131
time .sleep (0.05 )
132
132
logging .info (self ._ag .get_gyro_data ()['z' ])
133
133
self .stop ()
134
134
135
- def forward (self , speed = 100 , elapse = - 1 ):
136
- self .move (speed = speed , elapse = elapse )
135
+ def forward (self , speed = 100 , time_elapse = 0 ):
136
+ self .move (speed = speed , time_elapse = time_elapse )
137
137
138
- def backward (self , speed = 100 , elapse = - 1 ):
139
- self .move (speed = - speed , elapse = elapse )
138
+ def backward (self , speed = 100 , time_elapse = 0 ):
139
+ self .move (speed = - speed , time_elapse = elapse )
140
140
141
- def left (self , speed = 100 , elapse = - 1 ):
142
- self .turn (speed = - speed , elapse = elapse )
141
+ def left (self , speed = 100 , time_elapse = 0 ):
142
+ self .turn (speed = - speed , time_elapse = time_elapse )
143
143
144
- def right (self , speed = 100 , elapse = - 1 ):
145
- self .turn (speed = speed , elapse = elapse )
144
+ def right (self , speed = 100 , time_elapse = 0 ):
145
+ self .turn (speed = speed , time_elapse = time_elapse )
146
146
147
147
def get_sonar_distance (self , sonar_id = 0 ):
148
148
return self .sonar [sonar_id ].get_distance ()
@@ -187,5 +187,8 @@ def restart(self):
187
187
def reboot (self ):
188
188
os .system ('sudo reboot' )
189
189
190
- def _dc_enc_motor (self , speed_left = 100 , speed_right = 100 , elapse = 0 ):
191
- self ._twin_motors_enc .control_time (power_left = speed_left , power_right = speed_right , time_elapse = elapse )
190
+ def _dc_enc_motor (self , speed_left = 100 , speed_right = 100 , time_elapse = 0 , target_distance = 0 ):
191
+ self ._twin_motors_enc .control (power_left = speed_left ,
192
+ power_right = speed_right ,
193
+ time_elapse = time_elapse ,
194
+ target_distance = target_distance )
0 commit comments