Index

A

accelerometers, 94

accessibility

environments, 52

fully accessible environments, 53

partially accessible environments, 53

accuracy (sensors), 107-109

actions

programmable actions and behaviors (seven criterion of defining a robot), 11

transitions, 70

Actions section (softbot frame), unit1 robot scenario, 224, 232-235

Active mode (ultrasonic sensors), 140

active sensors, 101-103

actuators

arms, programming, 208-216

defining, 17

error rates, 74

linear actuators, 161

motors

characteristics of, 160-161

current, 161

DC motors, 162-167, 183-184

direct/indirect drivetrains, 177-178

duty cycles, 165

encoders, 175-176

gears, 167-172

programming, 184-191, 194-200

R.E.Q.U.I.R.E., 183

resistance, 161

servos, 172-174, 183-184

speed, 161, 165, 182-183

terrain challenges, 178-181

torque, 161, 165-167, 182-183, 203-204

voltage, 160

output transducers, actuators as, 159-160

performance, 74

programming, 208-216

reality check, 84-87

robot effectiveness, 18

rotational actuators, 161

weight restrictions, 74

A/D (Analog-to-Digital) converters, 97-98

aerial robots, 15

Agent Technology from a Formal Perspective, 343

ambient light and color sensors, 118-119

analog sensors, 95-96

A/D converters, 97-98

output of, 99-100

reading, 97-98

storing readings, 100

voltage resolution, 99-100

Arduino

Arbotix controller, 297

Arduino Uno microcontrollers, 76-78

ArduoCopter, 337

OpenRov, 337

programming and Arduino compatibility, 337-338

Arkin, Ronald, 343

ARM microcontrollers, 36

ARM7 microcontrollers, 79

ARM9 microcontrollers, 79

arms

DOF, 84-85, 182, 200, 212-216

configuration space, 201

end-effectors, 205-207

torque, 203-204

end-effectors, 182, 205-207

kinematics, 203, 212-216

PhantomX Pincher Robot Arm (Trossen Robotics), 85-87, 204, 207, 220, 297-299

programming, 208-216

RS media, 207

speed, 182-183

Tetrix arms, 297

torque, 182-183, 203-204

types of, 201

assembly language, 26, 36

asynchronous data transfers

UART, 104-106

unit1 robot scenario, 235

ATmega microcontrollers, 79

AUAV (Autonomous Unmanned Aerial Vehicles), 15

autonomous operations (seven criterion of defining a robot), 12-13

autonomous robots, 13, 25

anatomy of, 268-269

hybrid autonomous robots, 221-222

Midamba Facility Scenario #1, 338-339

proactive autonomous robots, 221-222

programming, 266, 322

reactive autonomous robots, 221-222

scenario layouts, 242-244

softbots, 221

unit1 robot scenario, 239-241

autonomy, five essential ingredients of, 222

B

Beginner’s Guide to Programming Robots, The, 31

Behavior Based Robotics, 343

behaviors and programmable actions (seven criterion of defining a robot), 11

bevel gears, 170

bipedal mobility and terrain challenges, 180

birthday party robot scenario, 24-25, 266-267

floorplans, 49-50

flowcharts, 58, 61, 65

READ sets, 54-56

statecharts, 66-67, 70-72

subroutines, 64-65

blocking. See synchronous data transfers

Braun, Thomas, 343

budgets, 344-345

build examples

unit1 robot scenario

autonomous design, 239-241

five essential ingredients of, 222-223

pseudocode, 231

sensors, 222

softbot frame, 223-239

SPACES, 242-263

unit2 robot scenario, 317-319

capability matrix, 308-309

STORIES, 325-337

Burns, Ken, 337-338

BURT (Basic Universal Robot Translator), 21, 35, 36

arms, 208-216

Facility Scenario #1, STORIES, 325-337

initialization preconditions/postconditions, 249-261

intentions, programming, 282-299, 304

Java translation, unit1 robot scenario, 227-239

kinematics, 214-216

motors

basic operations, 186-191

paths to specific locations, 191, 194-197

programming arms, 208-216

programming via Arduino, 198-200

programming

basic movements, 186-191

motors via Arduino, 198-200

paths to specific locations, 191, 194-197

sensors

color sensors, 120-124

compass sensors, 154-157

tracking colored objects, RS Media, 124-128

tracking colored objects, Pixy vision sensors, 130-134

ultrasonic sensors, 143-153

softbots, frame BURT translation example, 223, 227-239

unit1 robot scenario

decisions robots make/rules robots follow, 280-281

initialization preconditions/postconditions, 249-261

Java translation, 227-239

ontologies, 274-281

programming intentions, 282-299, 304

softbot frame BURT translation example, 223, 227-239

STORIES, 325-337

unit2 robot scenario, STORIES, 325-337

wheeled robots, 186-191, 194-200

C

calibrating sensors, 110-111

color sensors, 119-120

end user calibration process, 112

one point calibration, 113

thresholding method, 120

two point calibration, 113

ultrasonic sensors, 113, 141-142

Calibration Minimum and Maximum mode (color sensors), 118

cameras (digital), 116

active mode, 102

passive mode, 102

tracking colored objects

Pixy vision sensors, 128-134

RS Media, 124-129

capability matrixes, 37-39, 87, 308-309

Charmed Labs sensors, 113

CHIMP (CMU Highly Intelligent Mobile Platform), 80, 181

closed-loop control and servos, 173-174

color sensors, 80, 116

Ambient Light Level mode, 118

calibrating, 118-120

Color ID mode, 118

Component RGB mode, 118

detection range, 119

FOV, 117-119

LED, 116-119

lighting, 119

Normalized RGB mode, 118

programming, 120-124

Red mode, 118

Reflected Intensity Level mode, 118

reflective color sensing, 116

shielding, 119

similarity matching, 120

unit1 robot scenario, 222

compass sensors, 94, 153

comparing, 107

HiTechnic compass sensors, 154-157

programming, 154-157

compilers, 27, 33

Component RGB mode (color sensors), 118

composite state/substate (statecharts), 68

configuration space, arms and DOF, 201

contact sensors, 94

Continuous mode (ultrasonic sensors), 139-140

control (flow of), 60-61

controllers

defining, 19, 33

microcontrollers

A/D converters, 97

Arduino Uno microcontrollers, 76-78

ARM microcontrollers, 36

ARM7 microcontrollers, 79

ARM9 microcontrollers, 79

AT microcontrollers, 79

commonly used microcontrollers, 23

components of, 20

defining, 19, 33

end effectors, 22

EV3 microcontrollers (Mindstorm), 78-79, 103

I2C serial communication, 105-106

languages, 25-26, 36

layout of, 74-75

processors, 21

reality check, 76-79

RS Media microcontrollers (WowWee), 78

sensor interfaces, 103-104

serial ports, 103

UART serial communication, 104-106

multiple controllers, 74

performance, 74

processors, 20

sensors, 20-21

costs of building robots, 344-345

criterion of defining a robot, 10

autonomous operations, 12-13

instructions, 12

interacting with environments, 11

nonliving machines, 13

power sources, 11

programmable actions and behaviors, 11

reprogramming data/instructions, 12

sensing the environment, 11

current (electrical) and motors, 161

D

DARPA Disaster and Recovery Challenge, 180-181

DARPA Robotic Challenge Finals 2015, 80

DC (Direct Current) motors, 162

advantages/disadvantages of, 183-184

duty cycles, 165

encoders, 175-176

gears

benefits of, 167

bevel gears, 170

changing rotational direction, 171

gearboxes, 171-172

gearhead motors, 171-172

gearing down, 167

gear sets, 170

idlers, 169

pinion gears, 167-168

ratio of, 167, 170

spur gears, 170

total gear efficiency, 171

wheel gears, 167-168

worm gears, 170

pros and cons of, 163-165

R.E.Q.U.I.R.E., 183

servos, 172

advantages/disadvantages of, 183-184

closed-loop control, 173-174

EA, 173

NXT LEGO servos, 176

PWM signals, 173

speed, 165, 182-183

Tetrix motors (Pitsco), 186-191

torque, 165-167, 182-183

Decision symbol

flowcharts, 57, 61

pseudocode, 57

decisions robots make/rules robots follow, 280-281

deliberative programming, 323

detection range (color sensors), 119

deterministic environments, 52-53

diaphragms (sound sensors), 93

differential steering, 186

digital cameras, 116

active mode, 102

passive mode, 102

tracking colored objects

Pixy vision sensors, 128-134

RS Media, 124-129

digital sensors, 95-96

A/D converters, 97-98

output of, 99

reading, 97-98

storing readings, 100

dimension/weight (sensors), 108

direct/indirect drivetrains, 177-178

DOF (Degree of Freedom), 84-85

arms, 182, 200

configuration space, 201

end-effectors, 205-207

torque, 203-204

kinematics, 203, 212-216

DRC HUBO, 80, 181

duty cycles and motor speed, 165

E

EA (Error Amplifiers) and servos, 173

economics of robot builds, 344-345

EEPROM (Electrically Erasable Programmable Read-Only Memory) chips, 74

effectiveness, measuring, 17, 87-89, 245-246

Embedded Robotics: Mobile Robot Design and Applications with Embedded Systems, 343

encoders

motors, 175

optical encoders, 96

Tetrix encoders (Pitsco), 176

Encyclopedia Britannica, defining robots, 10

end effectors

arms, 182

defining, 18-19, 37

microcontrollers, 22

reality check, 84-87

types of, 205-207

endoskeletons, 220

entry/exit actions (statecharts), 68

entry-level robots, 344, 345

environmental sensors, 94

environments

accessibility, 52

defining, 52

deterministic environments, 52-53

fully accessible environments, 53

interacting with (seven criterion of defining a robot), 11

internal state, 94

nondeterministic environments, 52-53

partially accessible environments, 53

READ sets

birthday party robot scenario, 54-56

defining, 53

Test Pad (NXT Mindstorms), 53-54

RSVP, 52

sensing (seven criterion of defining a robot), 11

SPACES

checks, 262-263

preconditions/postconditions, 247-261

R.E.Q.U.I.R.E. checklists, 245-246

RSVP state diagrams, 262-263

scenario layouts, 242-244

terrain challenges, 178-179

DARPA Disaster and Recovery Challenge, 180-181

mobility concerns, 179

visual programming environments, 30

episodes, 267

error rates, 74

EV3 microcontrollers (Mindstorm), 78-79, 103, 113

event triggers (transitions), 70

expectation driven programming, 267

exteroceptive sensors, 94

F

Facility Scenario #1, 310

autonomous robots, 338-339

POV diagrams, 315-316, 319

programming languages, 342

ROLL model, 312-313

RSVP, 313-314

flowcharts, 317-319

state diagrams, 324

situations, 311-312

SPACES, 322-323

STORIES, 325-337

vocabulary, 311-313

final state (statecharts), 68

first generation language. See machine language

floorplans (RSVP), 47

birthday party robot scenario, 49-50

creating, 49-51

flowcharts

Facility Scenario #1, 317-319

RSVP, 47, 56

birthday robot scenario, 58, 61, 65

common symbols of, 57

Decision symbol, 57, 61

flow of control, 60-61

Input symbol, 58

loops, 63

Output symbol, 58

Process symbol, 57-58

pseudocode, 56-58

Start symbol, 57

Stop symbol, 57

subroutines, 64-65

forward kinematics, 203, 213

FOV (Field of Vision)

color sensors, 117-119

Pixy vision sensors, 134

ultrasonic sensors, 135, 141

frames (softbot)

Actions section, 224, 232-234

asynchronous instructions, 235

BURT translation example, 223, 227-239

Parts section, 224, 231-232

ROLL model, 225-239

Scenarios/Situations section, 224, 236-239

synchronous instructions, 235

Tasks section, 224, 234-235

frequencies, pH measurement scale, 82-84

full loads (torque), 166

fully accessible environments, 53

fully automated robots, 52

G

gears

benefits of, 167

bevel gears, 170

gearboxes, 171-172

gearhead motors, 171-172

gearing down, 167

gear sets, 170

idlers, 169

pinion gears, 167-168

ratio of, 167, 170

rotational direction, changing, 171

spur gears, 170

total gear efficiency, 171

wheel gears, 167-168

worm gears, 170

Granat, Kyle, 220

graphical language programming, 29

guard condition (transitions), 70

gyroscopes, 94

H

HC-SR04 ultrasonic sensors, 148

hexapods, PhantomX AX Metal Hexapod (Trossen Robotics), 220

HiTechnic sensors, 113, 154-157

How to Program Autonomous Robots, 308

HR-OS1 Humanoid Endoskeleton (Trossen Robotics), 220

Hughes, Cameron, 31, 308

Hughes, Tracey, 31, 308

human senses/sensor comparisons, 91

hybrid autonomous robots, 221-222

I

I2C (Inter Integrated, I2 part, Circuit) synchronous serial communication, 105-106

idlers and gears, 169

image sensors, 124

indirect/direct drivetrains, 177-178

indoor/outdoor terrain challenges, 178

DARPA Disaster and Recovery Challenge, 180-181

mobility concerns, 179

initial state (statecharts), 68

initialization preconditions/postconditions

BURT translation, 249-261

coding preconditions/postconditions, 252-261

power up preconditions/postconditions, 251

Input and Output symbol (pseudocode), 57

input devices, sensors as, 93

Input symbol (flowcharts), 58

instructions

Arduino compatibility, 337-338

arms, 208-216

autonomous robots, 13, 322

basic movements, 186-191

deliberative programming, 323

differential steering, 186

episodes, 267

expectation driven programming, 267

Facility Scenario #1, 310

autonomous robots, 338-339

POV diagrams, 315-319

programming languages, 342

ROLL model, 312-313

RSVP, 313-314

RSVP flowcharts, 317-319

RSVP state diagrams, 324

situations, 311-312

SPACES, 322-323

STORIES, 325-337

vocabulary, 311-313

instruction vocabulary, 224

intentions, 282-299, 304

languages, 342

motors

Arduino, 198-200

basic operations, 186-191

paths to specific locations, 191, 194-197

wheeled robots, 184-191, 194-200

object-oriented programming, 266

efficiency, 304-305

STORIES, 272-273

PASS, 323

paths to specific locations, 191, 194-197

processors, 20

programming languages, 25

assembly language, 26, 36

BURT, 35-36

capability matrices, 37-39

compilers, 27, 33

graphical language programming, 29

interpreters, 27, 33

machine language, 26

Midamba programming scenario, 30, 42-44

puppet mode, 29

robot vocabulary, 37-38, 47

ROLL model, 39-44

taxonomies of, 27

visual programming environments, 30

pseudocode and RSVP, 56-58

reactive programming, 323

recommendations for first time programmers, 348-349

responsibility, 345

RSVP, 349

environments, 52-53

floorplans, 47-51

flowcharts, 47, 56-65

mapping scenarios, 48

pseudocode, 56-58

READ sets, 53-56

statecharts, 47, 66-72

Test Pad (NXT Mindstorms), 48

scenarios

defining, 267

scenario-based programming and safety, 345

scripts, 267

sensors

color sensors, 120-124

compass sensors, 154-157

Pixy vision sensors, 130-134

ultrasonic sensors, 143-153

seven criterion of defining a robot, 12

situations, 267

STORIES, 349

object-oriented programming, 304-305

object-oriented programming, 272-273

overview of, 268

unit1 robot scenario, 269-271, 274-299, 304-305, 325-337

unit2 robot scenario, 325-337

telerobots, 13

unit1 robot scenario, 269, 319

capability matrix, 308-309

equipment list, 320-321

STORIES, 269-271, 274-299, 304-305, 325-337

unit2 robot scenario, 317-319

capability matrix, 308-309

STORIES, 325-337

intentions, programming, 282-299, 304

interacting with environments (seven criterion of defining a robot), 11

internal state, 94

internal transitions (statecharts), 68-70

interpreters, 27, 33

inverse kinematics, 203

IR (infrared) sensors, 116

J-L

Java

BURT translation, unit1 robot scenario, 227-239

STORIES, 305

kinematics

calculating, 212-216

defining, 203

forward kinematics, 203, 213

inverse kinematics, 203

planar kinematics, 213

languages (programming), 25, 342

assembly language, 26, 36

BURT, 35-36

capability matrices, 37-39

compilers, 27, 33

graphical language programming, 29

interpreters, 27, 33

machine language, 26

Midamba programming scenario, 30

scenario vocabulary (ROLL model), 44

situation vocabulary (ROLL model), 42

task vocabulary (ROLL model), 43

pseudocode and flowcharts, 56-58

puppet mode, 29

robot vocabulary, 47

capability matrices, 37-39

ROLL model, 39-44

ROLL model, 39

robot capabilities, 41

scenario vocabularies, 44

situation vocabularies, 42

task vocabularies, 43

taxonomies of, 27

tool-chains, 27

visual programming environments, 30

layouts, POV diagrams and Facility Scenario #1, 315-316, 319

LED

color sensors, 116-119

Pixy vision sensors, 129

reflective color sensing, 116

light sensors, 116

lighting, 119

linear actuators, 161

linearity (sensors), 107-110

loops

closed-loop control and servos, 173-174

flowcharts, 63

M

machine language, 26

mapping scenarios and RSVP

environments, 52-53

floorplans, 49-51

READ sets, 53-56

Test Pad (NXT Mindstorms), 48

MaxBotix EZ1 ultrasonic sensors, 152-153

Merriam-Websters Dictionary, defining robots, 10

microcontrollers

A/D converters, 97

Arduino Uno microcontrollers, 76-78

ARM microcontrollers, 36

ARM7 microcontrollers, 79

ARM9 microcontrollers, 79

ATmega microcontrollers, 79

commonly used microcontrollers, 23

components of, 20

defining, 19, 33

end effectors, 22

EV3 microcontrollers (Mindstorm), 78-79

languages, 25

assembly language, 26, 36

machine language, 26

layout of, 74-75

processors, 21

reality check, 76-79

RS Media microcontrollers (WowWee), 78

sensor interfaces, 103-104

sensors, 21

serial ports, 103

I2C serial communication, 105-106

UART serial communication, 104-106

V3 microcontrollers, 103

Midamba

Facility Scenario #1, 310

autonomous robots, 338-339

POV diagrams, 315-316, 319

programming languages, 342

ROLL model, 312-313

RSVP, 313-314

RSVP flowcharts, 317-319

RSVP state diagrams, 324

situations, 311-312

SPACES, 322-323

STORIES, 325-337

vocabulary, 311-313

scenarios, 349

programming scenario, 30, 42-44

unit1 robot scenario, 308-309, 319-321, 325-337

unit2 robot scenario, 308-309, 317-319, 325-337

sensors, 84

Mindstorm EV3 microcontrollers, 78-79

mobility

differential steering, 186

terrain challenges, 179

motors

arms, programming, 208-216

characteristics of, 160-161

commonly-used motors, 255

current, 161

DC motors, 162-163

advantages/disadvantages of, 183-184

duty cycles, 165

encoders, 175-176

gears, 167-172

pros and cons of, 163-165

R.E.Q.U.I.R.E., 183

servos, 172-174, 183-184

speed, 165, 182-183

Tetrix DC motors (Pitsco), 186-191

torque, 165-167, 182-183

direct/indirect drivetrains, 177-178

duty cycles, 165

encoders, 175-176

gears

benefits of, 167

bevel gears, 170

changing rotational direction, 171

gearboxes, 171-172

gearhead motors, 171-172

gearing down, 167

gear sets, 170

idlers, 169

pinion gears, 167-168

ratio of, 167, 170

spur gears, 170

total gear efficiency, 171

wheel gears, 167-168

worm gears, 170

programming

Arduino, 198-200

arms, 208-216

basic operations, 186-191

paths to specific locations, 191, 194-197

wheeled robots, 184-191, 194-200

R.E.Q.U.I.R.E., 183

resistance, 161

servos, 172

advantages/disadvantages of, 183-184

closed-loop control, 173-174

EA, 173

NXT LEGO servos, 176

PWM signals, 173

speed, 161, 165, 182-183

terrain challenges, 178

DARPA Disaster and Recovery Challenge, 180-181

mobility concerns, 179

torque, 161, 165-167, 182-183, 203-204

voltage, 160

N

names (statecharts), 68

no load torque, 166-167

nominal torque, 166-167

nondeterministic environments, 52-53

nonliving machines, robots as (seven criterion of defining a robot), 13

Normalized RGB mode (color sensors), 118

NXT LEGO servos, 176

NXT Mindstorms, Test Pad

READ sets, 53-54

RSVP, 48

O

object-oriented programming, 266

efficiency, 304-305

STORIES, 272-273

Ohm’s Law, 161

one point calibration method and sensors, 113

ontologies, unit1 robot scenario, 271

OpenRov (Arduino), 337

open-source robots, 220, 344-345

optical encoders, 96

optical sensors, 94

OS (Operating Systems), ROS, 221

outdoor/indoor terrain challenges, 178

DARPA Disaster and Recovery Challenge, 180-181

mobility concerns, 179

Output symbol (flowcharts), 58

output transducers, actuators as, 159-160

P

Parallax Ping))) ultrasonic sensors, 150

partially accessible environments, 53

Parts section (softbot frame), unit1 robot scenario, 224, 231-232

PASS (Propositions and Sensor States), 323

Passive mode (ultrasonic sensors), 140

passive sensors

examples of, 103

PIR sensors, 101

performance, 74

PhantomX AX Metal Hexapod (Trossen Robotics), 220

PhantomX Pincher Robot Arm (Trossen Robotics), 85-87, 204, 207, 220, 297-299

pH measurement scale, 82-84

Ping mode (ultrasonic sensors), 139-140

pinion gears, 167

PIR (Passive Infrared) sensors, 101

Pixy vision sensors

attributes of, 134

FOV, 134

programming, 130-134

tracking colored objects, 128-129

planar kinematics, 213

planning and RSVP

environments, 52-53

floorplans, 47-51

flowcharts, 47, 56-65

mapping scenarios, 48

READ sets, 53-56

statecharts, 47, 66-72

Test Pad (NXT Mindstorms), 48

postconditions/preconditions (SPACES), 247

action choices for unmet conditions, 248

robot initialization, 249

coding preconditions/postconditions, 252-257

power up preconditions/postconditions, 251

where preconditions/postconditions come from, 257-261

unmet conditions, 248

pot (potentiometers) and servos, 172

potential, measuring, 17, 87-89, 245-246

POV (Point of View) diagrams, Facility Scenario #1, 315-316, 319

power sources (seven criterion of defining a robot), 11

precision (sensors), 108-109

preconditions/postconditions (SPACES), 247

action choices for unmet conditions, 248

robot initialization, 249

coding preconditions/postconditions, 252-257

power up preconditions/postconditions, 251

where preconditions/postconditions come from, 257-261

unmet conditions, 248

proactive autonomous robots, 221-222

proactive softbots, 221-222

processors

controllers, 20

instructions, 20

microcontrollers, 21

Process symbol

flowcharts, 57-58

pseudocode, 57

programmable actions and behaviors (seven criterion of defining a robot), 11

programming

Arduino compatibility, 337-338

arms, 208-216

autonomous robots, 266, 322

basic movements, 186-191

BURT, 21

deliberative programming, 323

differential steering, 186

EEPROM chips, 74

episodes, 267

expectation driven programming, 267

Facility Scenario #1, 310

autonomous robots, 338-339

POV diagrams, 315-316, 319

programming languages, 342

ROLL model, 312-313

RSVP, 313-314

RSVP flowcharts, 317-319

RSVP state diagrams, 324

situations, 311-312

SPACES, 322-323

STORIES, 325-337

vocabulary, 311-313

instruction vocabulary, 224

intentions, 282-299, 304

languages, 25, 342

assembly language, 26, 36

BURT, 35-36

capability matrices, 37-39

compilers, 27, 33

graphical language programming, 29

interpreters, 27, 33

machine language, 26

Midamba programming scenario, 30, 42-44

pseudocode, 56-58

puppet mode, 29

robot vocabulary, 37-38, 47

ROLL model, 39-44

taxonomies of, 27

tool-chains, 27

visual programming environments, 30

motors

Arduino, 198-200

basic operations, 186-191

paths to specific locations, 191, 194-197

wheeled robots, 184-191, 194-200

object-oriented programming, 266

efficiency, 304-305

STORIES, 272-273

PASS, 323

paths to specific locations, 191, 194-197

reactive programming, 323

recommendations for first time programmers, 348-349

responsibility, 345

RSVP, 349

environments, 52-53

floorplans, 47-51

flowcharts, 47, 56-65

mapping scenarios, 48

READ sets, 53-56

statecharts, 47, 66-72

Test Pad (NXT Mindstorms), 48

scenario-based programming and safety, 345

scenarios

defining, 267

determining, 23-25

scenario-based programming and safety, 345

scripts, 267

sensors, 16

color sensors, 120-124

compass sensors, 154-157

Pixy vision sensors, 130-134

ultrasonic sensors, 143-153

situations, 267

speed, 17

STORIES, 349

object-oriented programming, 304-305

object-oriented programming, 272-273

overview of, 268

unit1 robot scenario, 269-271, 274-299, 304-305

strength, 17

unit1 robot scenario, 269, 319

capability matrix, 308-309

equipment list, 320-321

STORIES, 269-271, 274-299, 304-305, 325-337

unit2 robot scenario, 317-319

capability matrix, 308-309

STORIES, 325-337

proprioceptive sensors, 94

proximity sensors, 94, 116

pseudocode

common symbols, 57

flowcharts, 56-58

Input and Output symbol, 57

Process symbol, 57

Start and Stop symbol, 57

Start Decision symbol, 57

unit1 robot scenario, 231

puppet mode, 29

PWM (Pulse Width Modulated) signals and servos, 173

Q-R

range (sensors), 94, 107-108

ratio of gears, 167, 170

reactive autonomous robots, 221-222

reactive programming, 323

reactive softbots, 221-222

READ (Robot Environmental Attribute Description) sets

birthday party robot scenario, 54-56

defining, 53

Test Pad (NXT Mindstorms), 53-54

reality checks

actuators, 84-87

end effectors, 84-87

microcontrollers, 76-79

R.E.Q.U.I.R.E., 87-89, 245-246

sensors, 80-81, 84, 88-89

recommendations for first time programmers, 348-349

Red mode (color sensors), 118

Reflected Intensity Level mode (color sensors), 118

reflective color sensing, 116

refresh rate (sensors), 107

reliability (sensors), 108

repeatability (sensors), 108

reprogramming data/instructions (seven criterion of defining a robot), 12

R.E.Q.U.I.R.E. (Robot Effectiveness Quotient Used in Real Environments), 17, 87-89

motors, 183

unit1 robot scenario, 245-246

resistance, motors, 161

resolution (sensors), 107-108

response time (sensors), 107

responsibility programming, 345

Robosapien (RS Media), tracking colored objects, 124-128

robots. See also softbots

aerial robots, 15

AUAV, 15

autonomous robots, 12-13, 25

anatomy of, 268-269

hybrid autonomous robots, 221-222

Midamba Facility Scenario #1, 338-339

proactive autonomous robots, 221-222

programming, 266, 322

reactive autonomous robots, 221-222

scenario layouts, 242-244

softbots, 221

unit1 robot scenario, 239-241

birthday party robot, 24-25, 266-267

floorplans, 49-50

flowcharts, 58, 61, 65

READ sets, 54-56

statecharts, 66-67, 70-72

subroutines, 64-65

budgets, 344-345

categories of, 13-15

costs, 344-345

defining, 9-10

entry-level robots, 344-345

environments

interacting with, 11

sensing, 11

fully automated robots, 52

instructions, 12

Midamba, 84

nonliving machines, robots as, 13

open-source robots, 220, 344-345

power sources, 11

programmable actions and behaviors, 11

reprogramming data/instructions, 12

ROV, 15

safety, 220, 345

SARAA robots, 346-348

seven criterion of defining a robot, 10-13

skeleton of, 22

speed, 17

strength, 17

true robots, defining, 13, 16

UAV, 15

underwater robots, 15

vocabulary, 47

capability matrices, 37-39

ROLL model, 39-44, 225-239

ROLL (Robot Ontology Language Level) model, 39

Facility Scenario #1, 312-313

robot capabilities, 41

scenario vocabularies, 44

situation vocabularies, 42

softbot frame, unit1 robot scenario, 225-239

task vocabularies, 43

ROS (Robot Operating System), 221

rotational actuators, 161

rotational speed, 161

Rouff, Christopher A., 343

ROV (Remotely Operated Vehicles), 15

RS Media

arms, 207

microcontrollers, 78

Robosapien, 124-128

tracking colored objects, 124-129

RSVP (Robot Scenario Visual Planning), 349

environments, 52-53

Facility Scenario #1, 313-319, 324

floorplans, 47-51

flowcharts, 47

birthday robot scenario, 58, 61

common symbols of, 57

Decision symbol, 57, 61

flow of control, 60-61

Input symbol, 58

loops, 63

Output symbol, 58

Process symbol, 57-58

pseudocode, 56-58

Start symbol, 57

Stop symbol, 57

subroutines, 64-65

mapping scenarios, 48

READ sets, 53-56

state diagrams, 262-263

statecharts, 47, 66-72

Test Pad (NXT Mindstorms), 48

rules robots follow/decisions robots make, 280-281

running current, 161

Running Man, 80

S

safety

Open Source Robots, 220

scenario-based programming, 345

SARAA (Safe Autonomous Robot Application Architecture) robots, 346-348

scenarios

autonomous robot design, 242-244

birthday party robot scenario, 266-267

defining, 267

Facility Scenario #1, 310

autonomous robots, 338-339

POV diagrams, 315-316, 319

programming languages, 342

ROLL model, 312-313

RSVP, 313-314

RSVP flowcharts, 317-319

RSVP state diagrams, 324

situations, 311-312

SPACES, 322-323

STORIES, 325-337

vocabulary, 311-313

mapping via RSVP, 48

environments, 52-53

floorplans, 49-51

READ sets, 53-56

Test Pad (NXT Mindstorms), 48

programming scenarios, determining, 23-25

safety and scenario-based programming, 345

STORIES

object-oriented programming, 272-273

object-oriented programming, 304-305

overview of, 268

unit1 robot scenario, 269-271, 274-299, 304-305

unit1 robot scenario, 269, 319

capability matrix, 308-309

equipment list, 320-321

STORIES, 269-271, 274-299, 304-305, 325-337

unit2 robot scenario, 317-319

capability matrix, 308-309

STORIES, 325-337

vocabularies (ROLL model), 44

warehouse scenarios, 310-339, 342

Scenarios/Situations section (softbot frame), unit1 robot scenario, 224, 236-239

scripts, 267

second generation language. See assembly language

self-transitions (statecharts), 68-69

sensing environments (seven criterion of defining a robot), 11

sensitivity (sensors), 108

sensors

accelerometers, 94

accuracy, 107-109

active sensors, 101-103

analog sensors, 95-96

A/D converters, 97-98

output of, 99-100

reading, 97-98

storing readings, 100

voltage resolution, 99-100

attributes of, 107-110

calibrating, 110-111

end user calibration process, 112

one point calibration, 113

two point calibration, 113

Charmed Labs sensors, 113

color sensors, 80

Ambient Light Level mode, 118

calibrating, 119-120

Calibration Minimum and Maximum mode, 118

Color ID mode, 118

Component RGB mode, 118

detection range, 119

FOV, 117-119

LED, 116-119

lighting, 119

Normalized RGB mode, 118

programming, 120-124

Red mode, 118

Reflected Intensity Level mode, 118

reflective color sensing, 116

shielding, 119

similarity matching, 120

unit1 robot scenario, 222

compass sensors, 94, 153

comparing, 107

HiTechnic compass sensors, 154-157

programming, 154-157

contact sensors, 94

controllers, 20

defining, 16, 37, 91

digital cameras, 116, 124

digital sensors, 95-96

A/D converters, 97-98

output of, 99-100

reading, 97-98

storing readings, 100

dimension/weight, 108

environmental sensors, 94

error rates, 74

EV3 Mindstorms sensors, 113

exteroceptive sensors, 94

frequencies, ph measurement scale, 82-84

gyroscopes, 94

HiTechnic sensors, 113

human senses/sensor comparisons, 91

I2C serial communication, 105-106

image sensors, 124

input devices, sensors as, 93

IR sensors, 116

light sensors, 116

limitations of, 81, 84

linearity, 107-110

low-end versus high-end sensors, 16

microcontrollers, 21, 103-104

optical sensors, 94

passive sensors, 101-103

performance, 74

PIR sensors, 101

Pixy vision sensors, 128-129

attributes of, 134

FOV, 134

programming, 130-134

training Pixy to detect objects, 129

precision, 108-109

problems with, 111

programming, 16

proprioceptive sensors, 94

proximity sensors, 94, 116

range, 107-108

ranging sensors, 94

reality checks, 80-81, 88-89, 84

refresh rate, 107

reliability, 108

repeatability, 108

R.E.Q.U.I.R.E., 88-89

resolution, 107-108

response time, 107

robot effectiveness, 17

sensitivity, 108

sensor states. See PASS

serial ports, 103

sound sensors, 93

SPACES, 242

checks, 262-263

preconditions/postconditions, 247-261

R.E.Q.U.I.R.E. checklists, 245-246

RSVP state diagrams, 262-263

scenario layouts, 242-244

transducers, 92, 95

troubleshooting, 111

types of, 16

UART serial communication, 104-106

ultrasonic sensors, 80, 88, 94, 116

accuracy of, 135-138

Active mode, 140

calibrating, 113, 141-142

Continuous mode, 139-140

FOV, 135, 141

HC-SR04, 148

infrared sensors, 103

limitations of, 135-138

MaxBotix EZ1, 152-153

modes of, 139-140

Parallax Ping))), 150

Passive mode, 140

Ping mode, 139-140

programming, 143-153

reading data types, 141

sample readings, 140

storing readings, 100

unit1 robot scenario, 222

voltage resolution, 108

unit1 robot scenario, 222

Vernier sensors, 113

vision, 115

WowWee sensors, 113

serial ports

asynchronous data transfers, 104-106

sensor/microcontroller interfaces, 103

synchronous data transfers, 105-106

servos, 172

advantages/disadvantages of, 183-184

closed-loop control, 173-174

commonly-used servos, 255

EA, 173

NXT LEGO servos, 176

PWM signals, 173

seven criterion of defining a robot, 10

autonomous operations, 12-13

instructions, 12

interacting with environments, 11

nonliving machines, 13

power sources, 11

programmable actions and behaviors, 11

reprogramming data/instructions, 12

sensing the environment, 11

shielding (lighting), 119

sight and sensors, 115

similarity matching, color sensors, 120

situations

defining, 267

Facility Scenario #1, 311-312

situation vocabularies (ROLL model), 42

skeleton, 22

softbots. See also robots

autonomous robots, 221

defining, 219-221

frames

Actions section, 224, 232-234

asynchronous instructions, 235

BURT translation example, 223, 227-239

Parts section, 224, 231-232

ROLL model, 225-239

Scenarios/Situations section, 224, 236-239

synchronous instructions, 235

Tasks section, 224, 234-235

proactive softbots, 221-222

reactive softbots, 221-222

unit1 robot scenario, 222-239

sound sensors, 93

source state (transitions), 70

SPACES (Sensor Precondition/Postcondition Assertion Check of Environmental Situations)

checks, 262-263

Facility Scenario #1, 322-323

preconditions/postconditions, 247

action choices for unmet conditions, 248

robot initialization, 249-261

unmet conditions, 248

R.E.Q.U.I.R.E. checklists, 245-246

RSVP state diagrams, 262-263

scenario layouts, 242-244

speed

arms, 182-183

motors, 161, 165

pinion gears, 168

programming, 17

rotational speed, 161

wheel gears, 168

spur gears, 170

stall current, 161

stall torque, 166-167

Start symbol (flowcharts), 57

Start and Stop symbol (pseudocode), 57

startup torque, 166, 182

state diagrams

Facility Scenario #1, 324

RSVP, 262-263

statecharts (RSVP), 47

birthday robot scenario, 66-67, 70-72

composite state/substate, 68

composite/substates, 68

entry/exit actions, 68

final state, 68

initial state, 68

names, 68

parts of, 68

transitions, 68-70

validation statements, 69

Stop symbol (flowcharts), 57

STORIES (Scenarios Translated into Ontologies Reasoning Intentions and Epistemological Situations), 349

object-oriented programming, 272-273, 304-305

overview of, 268

unit1 robot scenario, 269, 325-337

decisions robots make/rules robots follow, 280-281

object-oriented programming and efficiency, 304-305

ontology of, 271, 274-281

programming intentions, 282-299, 304

unit2 robot scenario, 325-337

storing sensor readings, 100

strength, programming, 17

subroutines, 64-65

switches, 96

synchronous data transfers

I2C serial communication, 105-106

unit1 robot scenario, 235

T

target state (transitions), 70

task vocabularies (ROLL model), 43

Tasks section (softbot frame), unit1 robot scenario, 224

telerobots, 13

terrain challenges, 178

DARPA Disaster and Recovery Challenge, 180-181

mobility concerns, 179

Test Pad (NXT Mindstorms)

READ sets, 53-54

RSVP, 48

Tetrix arms (Pitsco), 297

Tetrix DC motors (Pitsco), programming, 186-191

Tetrix encoders (Pitsco), 176

thresholding method, 120

Tiny Circuits, 337-338

tool-chains, 27

torque

arms, 182-183, 203-204

full loads, 166

motors, 161, 165-167, 203-204

no load torque, 166-167

nominal torque, 166-167

pinion gears, 168

stall torque, 166-167

startup torque, 166, 182

wheel gears, 168

total gear efficiency, 171

tracking colored objects

Pixy vision sensors, 128

attributes of, 134

FOV, 134

programming, 130-134

training Pixy to detect objects, 129

RS Media, 124-129

transducers, 92, 95, 159-160

transitions (statecharts)

actions, 70

event triggers, 70

guard condition, 70

internal transitions, 68-70

parts of, 70

self-transitions, 68-69

source state, 70

target state, 70

treads/tracks, terrain challenges, 179

Trossen Robotics, 85-87, 220

true robots, defining, 13, 16

two point calibration method, sensors, 113

U

UART (Universal Asynchronous Receiver-Transmitter) serial communication, 104-106

UAV (Unmanned Aerial Vehicles), 15

ultrasonic sensors, 80, 88, 94, 116

accuracy of, 135-138

Active mode, 140

calibrating, 113, 141-142

Continuous mode, 139-140

FOV, 135, 141

HC-SR04, 148

infrared sensors, 103

limitations of, 135-138

MaxBotix EZ1, 152-153

modes of, 139-140

Parallax Ping))), 150

Passive mode, 140

Ping mode, 139-140

programming, 143-153

readings

data types, 141

sample readings, 140

storing, 100

unit1 robot scenario, 222

voltage resolution, 108

underwater robots, 15

unit1 robot scenario, 269, 319

autonomous design, 239-241

capability matrix, 308-309

equipment list, 320-321

five essential ingredients of, 222-223

pseudocode, 231

sensors, 222

softbot frame, 223

Actions section, 224, 232-234

asynchronous instructions, 235

Parts section, 224, 231-232

ROLL model, 225-239

Scenarios/Situations section, 224, 236-239

synchronous instructions, 235

Tasks section, 224, 234-235

SPACES

checks, 262-263

preconditions/postconditions, 247-261

R.E.Q.U.I.R.E. checklists, 245-246

RSVP state diagrams, 262-263

scenario layouts, 242-244

STORIES, 269, 325-337

decisions robots make/rules robots follow, 280-281

object-oriented programming and efficiency, 304-305

ontology of, 271, 274-281

programming intentions, 282-299, 304

unit2 robot scenario, 317-319

capability matrix, 308-309

STORIES, 325-337

Urban Dictionary, defining robots, 10

V

validation statements (statecharts), 69

Vernier sensors, 113

vision and sensors, 115

visual planning. See RSVP

visual programming environments, 30

vocabulary

capability matrices, 37-39

defining, 37, 47

Facility Scenario #1, 311-313

ROLL model, 39

robot capabilities, 41

scenario vocabularies, 44

situation vocabularies, 42

softbot frame, unit1 robot scenario, 225-239

task vocabularies, 43

voltage

motors, 160

voltage resolution

A/D converters, 97

analog sensor, 99-100

ultrasonic sensors, 108

W-X-Y-Z

warehouse scenarios, 310

autonomous robots, 338-339

POV diagrams, 315-316, 319

programming languages, 342

ROLL model, 312-313

RSVP, 313-314

RSVP flowcharts, 317-319

RSVP state diagrams, 324

situations, 311-312

SPACES, 322-323

STORIES, 325-337

vocabulary, 311-313

weight/dimension (sensors), 108

weight restrictions, actuators, 74

wheeled robots, 180, 184-191, 194-200

wheel gears, 167-168

Wikipedia, defining robots, 10

worm gears, 170

WowWee

RS Media microcontrollers, 78

sensors, 113

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset