Presentation is loading. Please wait.

Presentation is loading. Please wait.

Computer Science 10/06/20151 iRobot Create Command Interface CPSC 601.68/CPSC 599.68 Rob Kremer Department of Computer Science University of Calgary.

Similar presentations


Presentation on theme: "Computer Science 10/06/20151 iRobot Create Command Interface CPSC 601.68/CPSC 599.68 Rob Kremer Department of Computer Science University of Calgary."— Presentation transcript:

1 Computer Science 10/06/20151 iRobot Create Command Interface CPSC 601.68/CPSC 599.68 Rob Kremer Department of Computer Science University of Calgary

2 10/06/2015CPSC 609.68/599.68: Agent Communications2 Anatomy

3 10/06/2015CPSC 609.68/599.68: Agent Communications3 Anatomy Bump Sensors

4 10/06/2015CPSC 609.68/599.68: Agent Communications4 Anatomy

5 Agent software support: sensor tab 10/06/2015CPSC 609.68/599.68: Agent Communications5

6 Agent software support: sensor tab 10/06/2015CPSC 609.68/599.68: Agent Communications6

7 Agent software support: execute command 10/06/2015CPSC 609.68/599.68: Agent Communications7 execute takes a string of bytes (in decimal). Can also prefix a number with "s" to make it parse it as two bytes (a short).

8 10/06/2015CPSC 609.68/599.68: Agent Communications8 Modes OFF –Unresponsive (except START (128)) –Can charge PASSIVE –Sensor status commands –No Actuator commands –Can charge SAFE  recommended! –Sensor status commands –Actuator commands But reverts to PASSIVE if moving forward and any cliff sensor is activated; any wheel drop sensor is activated; or the charger is plugged in –No Charging FULL –Sensor status commands –Actuator commands –No Charging

9 10/06/2015CPSC 609.68/599.68: Agent Communications9 Modes OFF FULLSAFE PASSIVE START (128) FULL (132) SAFE (131) FULL (132) SAFE (131) START (128)

10 10/06/2015CPSC 609.68/599.68: Agent Communications10 Modes: WAIT A 5th Mode: WAIT When in WAIT mode the robot does not respond to ANY input. Goes into WAIT mode for 3 commands (see WAIT slide):WAIT slide –WAIT-DISTANCE –WAIT-ANGLE –WAIT-TIME –WAIT-EVENT If the robot is prevented, for some reason, from traveling the distance or the angle, it won’t respond to anything (try the undocumented command 7). Use only in scripts, NOT RECOMMENDED

11 10/06/2015CPSC 609.68/599.68: Agent Communications11 Actuators: Drive DRIVE (137 ) –2 short (16 bit) parameters –Each represented by 2 bytes, high byte first (so a total of 5 bytes for this command) Parameter 1: velocity in mm/sec –-500 to +500 (-ve means “backwards”) Parameter 2: curve radius in mm –-2000 to +2000 where -ve means clockwise and +ve means counterclockwise –32768 means “go straight” –-1 and +1 mean spin in place clockwise, counterclockwise respectively

12 10/06/2015CPSC 609.68/599.68: Agent Communications12 Actuators: LEDs LEDs ( 139 ) Adv&Play: –Bit 1 (=2): Play LED –Bit 3 (=8): Advance LED PowerColor (0-255): –0=green; 255=red PowerIntensity (0-255) –0=off; 255=full intensity

13 10/06/2015CPSC 609.68/599.68: Agent Communications13 Actuators: Send IR SEND-IR (151 ) Sends a byte using an add-on circuit and a IR LED Can be received by the omnidirectional IR reciever at the front of the robot Could be use to transmit short-distance identifiers for each robot Does not replace CASA agent communication protocols!

14 10/06/2015CPSC 609.68/599.68: Agent Communications14 Actuators: Songs Load a song –140 { }* : 0-15 : number of notes (1/2 of bytes) (up to 16 notes) : see table in OI Manual : in 1/64 second (31=G@49.0Hz … 127=G@12543.9Hz) Play a song –141 –Doesn’t work if a song is already playing

15 10/06/2015CPSC 609.68/599.68: Agent Communications15 Inputs: Sensors Read Sensors –142 Packets 0-6 are “packet groups” (eg: 0 is sensors 7-26, which is 26 bytes [some are two-byte returns]) Packets 7-42 are individual sensors Either numerical values (1 or 2 bytes) or bitmaps See OI Manual Also a commands for: –reading a list of sensors (149) –requesting a continuous stream of packet data (148) –pausing/resuming a stream (150)

16 10/06/2015CPSC 609.68/599.68: Agent Communications16 Sensor Groups Packets

17 10/06/2015CPSC 609.68/599.68: Agent Communications17 Sensor Single Packets

18 10/06/2015CPSC 609.68/599.68: Agent Communications18 Scripts Load a script –152 * : number of bytes in script (up to 100) : OI commands Play a script –143 –No flow control except for WAIT commands (next slide) Show script –154 –Returns the current script

19 10/06/2015CPSC 609.68/599.68: Agent Communications19 Scripts: Wait Wait time –155 in 1/10 sec (resolution of 15ms) Wait Distance –156 distance in mm. +ve=forward, -ve=back –Works for passively rotating the wheels Wait Angle –157 angle in deg. +ve=counterclockwise, -ve=clockwise Wait Event –158 : eg: 1=wheel drop (see table in OI Manual, p.16) –Use -ve for inverse of event (eg: -1 wheel drop stops)

20 10/06/2015CPSC 609.68/599.68: Agent Communications20 Tasks: measuring You can track the distance traveled by using sensor 19 (distance) Angle with sensor 20 (angle) Note: reading these sensors causes them to be reset Distance (angles) increment for forward (counterclockwise) and decrement for backward (clockwise) Class iRobotCreate’s regular sensor reading keeps an accumulator for distance and angle

21 10/06/2015CPSC 609.68/599.68: Agent Communications21 Tasks: Following a wall You can track along a wall using the wall sensor (sensor 8) Use Drive straight (137 32687) when the wall is there; or a wide right curve (137 -2000) when the wall goes away You should expect the occasional right-bump If you get a left-bumb, you’ve probably hit a corner


Download ppt "Computer Science 10/06/20151 iRobot Create Command Interface CPSC 601.68/CPSC 599.68 Rob Kremer Department of Computer Science University of Calgary."

Similar presentations


Ads by Google