Talking to Robots in Pharo

13
Noury Bouraqad i, Luc Fabresse, Jannik Laval h"p://car.mines/douai.fr Talking to with Very long-term goal! 4 Current Robots

description

Title: Talking to Robots in Pharo Speaker: Noury Bouraqadi Mon, August 18, 2:00pm – 2:30pm Video Part1: https://www.youtube.com/watch?v=lbwJVNdkJ9c Video Part2: https://www.youtube.com/watch?v=BLZ0be_aw64 Description Abstract: In the CAR team at Ecole des Mines de Douai (Lille Area, Northern France), we study mobile and autonomous robotics from two complementary perspectives: Software Engineering (SE) and Artificial Intelligence (AI). From the SE perspective, we study software architectures, infrastructures and tools for controlling individual robots. We focus on reflective and dynamic languages, as well as component models, for a modular and agile development of robotic software architectures. From the AI perspective, we study coordination and cooperation in robotic fleets. We mainly focus on communication models as well as emerging or predefined organizations for multi-agent robotic systems. In this presentation we will give an overview of some of our recent Smalltalk-based solutions we have been developping for both single robots and multi-robot fleets. We illustrate each contribution with experiments we have been conducting that iillustrate targeted applications. Bio: Dr. Noury Bouraqadi is a permanent associate professor at the Ecole des Mines de Douai. He earned a PhD degree in Software Engineering from the University of Nantes (France) in 1999, while he was working as an independent software developer. In 2001, he joined the Ecole des Mines de Douai where he introduced mobile robotics as a central topic for the CAR (Components, Agents and Robotics, http://car.mines-douai.fr) research team.

Transcript of Talking to Robots in Pharo

Page 1: Talking to Robots in Pharo

Noury&Bouraqadi,&Luc&Fabresse,&Jannik&Laval&h"p://car.mines/douai.fr4

Talking(to(

with(

Very long-term

goal!

44

4Current4Robots4

Page 2: Talking to Robots in Pharo

54

Robots4at4our4lab464

Physical4Environment4

Robot4

Actuator4Actuator4Computer4

Sensor4Sensor4Sensor4 Actuator4Actuator4Actuator4

SoCware4SoCware4SoCware4

74

Physical4Environment4

Robot4

Actuator4Actuator4Computer4

Sensor4Sensor4Sensor4 Actuator4Actuator4Actuator4

SoCware4SoCware4

84

MulHple4Kinds4of4Robots4

Page 3: Talking to Robots in Pharo

94

MulHple4Kinds4of4Robots4

Nou

ry4Bou

raqadi4–4JM

2L420104

104

MulHple4Kinds4of4Robots4

Heterogeneity4Challenge4•  Different4sensors4&4actuators4•  Different4shapes4&4sizes44•  Different4compuHng4capabiliHes4

114

Heterogeneity4Challenge4124

Different4low/level4algorithms4

Different4Drivers4&4Protocols4

Page 4: Talking to Robots in Pharo

Heterogeneity4Challenge4134

Different4low/level4algorithms4

ImplementaHons4exist4

Different4Drivers4&4Protocols4

144

Physical4Environment4

Robot4

Actuator4Actuator4Computer4

Sensor4Sensor4Sensor4 Actuator4Actuator4Actuator4

Algo4Algo4C,(C++(Python(

444

154

Physical4Environment4

Robot4

Actuator4Actuator4Computer4

Sensor4Sensor4Sensor4 Actuator4Actuator4Actuator4

Algo4Algo4C,4C++4Python4

?( 444

164

Physical4Environment4

Robot4

Actuator4Actuator4Computer4

Sensor4Sensor4Sensor4 Actuator4Actuator4Actuator4

Middleware4

Algo4Algo4C,4C++4Python4

444

Page 5: Talking to Robots in Pharo

174

Physical4Environment4

Robot4

Actuator4Actuator4Computer4

Sensor4Sensor4Sensor4 Actuator4Actuator4Actuator4

Algo4Algo4C,4C++4Python4

444

184

Physical4Environment4

Robot4

Actuator4Actuator4Computer4

Sensor4Sensor4Sensor4 Actuator4Actuator4Actuator4

Algo4Algo4C,4C++4Python4

444

Robot4Guide4using4194

•  Museum4•  Hospital4•  Shopping4Mall4•  …4

Robot4Guide4using4204

•  Museum4•  Hospital4•  Shopping4Mall4•  …4

Page 6: Talking to Robots in Pharo

Laser4Scans4!4Map4 Annotated4Map4

Robot4Guide4using4234

Motor4Odometer4 Motor4Odometer4Rangefinder4Rangefinder4Rangefinder4

Proprietary4SoCware4

Robot4Guide4using4244

Path44Planner4

LocalizaHon4System4

Motor4Odometer4 Motor4Odometer4Rangefinder4Rangefinder4Rangefinder4

Proprietary4SoCware4

Page 7: Talking to Robots in Pharo

Robot4Guide4using4254

Path44Planner4

LocalizaHon4System4

Motor4Odometer4 Motor4Odometer4Rangefinder4Rangefinder4Rangefinder4

Proprietary4SoCware4

App4

Bridge4

Talking(to(

with(

Talking(to(

with(

Talking(to(

with(

(Talk(Today)(

Page 8: Talking to Robots in Pharo

More4Challenges4294

More4Challenges4304

Resource4Constraints4(RAM,4CPU,4Ba"ery...)4

Hardware4+4SoCware4IntegraHon4

Changing4CondiHons4

More4Challenges4314

Self(Adapta;on(

Changing4CondiHons4

Resource4Constraints4(RAM,4CPU,4Ba"ery...)4 Hardware4

+4SoCware4IntegraHon4

More4Challenges4324

Smalltalk(+(FPGA(

(Talk(Tomorrow)(

Resource4Constraints4(RAM,4CPU,4Ba"ery...)4 Hardware4

+4SoCware4IntegraHon4

Page 9: Talking to Robots in Pharo

More4Challenges4334

TDD(

Hardware4+4SoCware4IntegraHon4

More4Challenges4344

TDD4

Hardware4+4SoCware4IntegraHon4

354

Physical(Environment(

Robot4

Actuator4Actuator4Computer4

Sensor4Sensor4Sensor4 Actuator4Actuator4Actuator4

SoCware4SoCware4SoCware4

364

Physical(Environment(

Robot4

Actuator4Actuator4Computer4

Sensor4Sensor4Sensor4 Actuator4Actuator4Actuator4

SoCware4SoCware4SoCware4 Safety(

Page 10: Talking to Robots in Pharo

374

Simula;on(

Safety(

384

SimulaHon4

Noise4

Resources4

Failure4

Asynchrony4

Precision4

Methodology4for4Safe4TDD4

•  Ensure4emergency4stop4working!4• Order4tests4– Sensors4before4actuators4– Controlled4environments4before4open4ones4– StaHc4environments4before4dynamic4ones4

•  Run4test4only4if4prerequisites4pass4

394

Methodology4for4Safe4TDD4

•  Ensure4emergency4stop4working!4• Order4tests4– Sensors4before4actuators4– Controlled4environments4before4open4ones4– StaHc4environments4before4dynamic4ones4

•  Run4test4only4if4prerequisites4pass4

404

Page 11: Talking to Robots in Pharo

Methodology4for4Safe4TDD4

•  Ensure4emergency4stop4working!4• Order4tests4– Sensors4before4actuators4– Controlled4environments4before4open4ones4– StaHc4environments4before4dynamic4ones4

•  Run4test4only4if4prerequisites4pass4

414

Methodology4for4Safe4TDD4

•  Ensure4emergency4stop4working!4• Order4tests4– Sensors4before4actuators4– Controlled4environments4before4open4ones4– StaHc4environments4before4dynamic4ones4

•  Run4test4only4if4prerequisites4pass4

424

BoTest4Framework4

434

the44

Future4is4

RoboHcs4Let’s44make4it4with44

Smalltalk4

444

10(000(000+(

Page 12: Talking to Robots in Pharo

Big4Players4Invest4in4RoboHcs4•  Amazon4Drones4for4Parcel4Delivery4

454

Big4Players4Invest4in4RoboHcs4•  Google4Self/Driving4Car44

464

Big4Players4Invest4in4RoboHcs4•  Google4Self/Driving4Car44

474

Google4Bought484RoboHcs4Companies4in4

2013!4

484

the44

Future4is4

RoboHcs4Let’s44make4it4with44

Smalltalk4

Page 13: Talking to Robots in Pharo

494

the44

Future4is4

RoboHcs4Let’s44make4it4with44

Smalltalk4 Noury&Bouraqadi,&Luc&Fabresse,&Jannik&Laval&h"p://car.mines/douai.fr4

Talking(to(

with(