This page (revision-27) was last changed on 2021-08-30 01:49 by Murray Altheim

This page was created on 2019-12-23 11:18 by Murray Altheim

Only authorized users are allowed to rename pages.

Only authorized users are allowed to delete pages.

Page revision history

Version Date Modified Size Author Changes ... Change note
27 2021-08-30 01:49 8 KB Murray Altheim to previous
26 2021-08-30 01:47 8 KB Murray Altheim to previous | to last
25 2021-04-17 10:32 6 KB Murray Altheim to previous | to last
24 2020-03-01 01:03 6 KB Murray Altheim to previous | to last
23 2020-03-01 01:02 6 KB Murray Altheim to previous | to last
22 2020-02-29 04:06 5 KB Murray Altheim to previous | to last
21 2020-02-29 03:49 5 KB Murray Altheim to previous | to last

Page References

Incoming links Outgoing links

Version management

Difference between version and

At line 43 removed one line
!! Sensors
At line 45 removed 16 lines
! Basic Obstacle Avoidance Sensors
[{Image src='attach/KR01/kr01-ir-plan-1.jpg' link='attach/KR01/kr01-ir-plan-1.jpg' caption='Mini TFT Display on the KR01' align='right' width='400' class='imgFloatRight'}]
The KR01 robot has __port__, __center__ and __starboard__ bumpers. (bumpers will be defined in a different and as-yet unspecified ''Behaviour'').
It also has __port-side__, __port__ (oblique), __center__, __starboard__ (oblique), and __starboard-side__ analog infrared sensors (Sharp GP2Y0A60SZLF 10-150cm), each with a range of about 1.5 meters. The side sensors face forward at 45° (rather than 90°, as per recommendations from the DPRG), the oblique sensors are 25° off center.
! Behaviour Plan
* The __Roam__ Behaviour uses the center IR and will slow the robot down beginning from 100% target velocity at 50cm to a full stop at 25cm. This adds a lambda function to both motor controllers to limit the top speed as a function of distance. Currently there is no recovery from the full stop, i.e., once stopped some other undefined behaviour will need to be triggered to back up or otherwise avoid the obstacle).
* The __Avoid__ (maybe "Swerve") Behaviour will add a lambda function to both motors that will progressively alter the steering (difference between the motors) as a function of distance based on the distance and difference of the port and starboard oblique sensors.
* The side infrareds have two modes: __Wall Follow__ or __Avoid Side__. In __Wall Follow__ mode it will attempt to keep the robot at a fixed distance from a perceived wall on either side. In __Avoid Side__ mode it will act similarly to the oblique sensors and attempt to push the robot away from the wall (likely at a greater distance than when in Line Follow mode), with the amount of push inversely proportional to distance.