50
Noury Bouraqad i, Luc Fabresse, Jannik Laval h"p://car.minesdouai.fr Talking to with

Talking to Robots with Pharo

Embed Size (px)

DESCRIPTION

In this presentation we will give an overview of we have been developing in Pharo for building robotics applications: -PhaROS

Citation preview

Page 1: Talking to Robots with Pharo

Noury  Bouraqadi,  Luc  Fabresse,  Jannik  Laval  h"p://car.mines-­‐douai.fr  

Talking  to  

with  

Page 2: Talking to Robots with Pharo
Page 3: Talking to Robots with Pharo

Very long-term

goal!

Page 4: Talking to Robots with Pharo

4  

 Current  Robots  

Page 5: Talking to Robots with Pharo

5  

Robots  at  our  lab  

Page 6: Talking to Robots with Pharo

6  

Physical  Environment  

Robot  

Actuator  Actuator  Computer  

Sensor  Sensor  Sensor   Actuator  Actuator  Actuator  

SoCware  SoCware  SoCware  

Page 7: Talking to Robots with Pharo

7  

Physical  Environment  

Robot  

Actuator  Actuator  Computer  

Sensor  Sensor  Sensor   Actuator  Actuator  Actuator  

SoCware  SoCware  

Page 8: Talking to Robots with Pharo

8  

MulHple  Kinds  of  Robots  

Page 9: Talking to Robots with Pharo

9  

MulHple  Kinds  of  Robots  

Page 10: Talking to Robots with Pharo

Nou

ry  Bou

raqadi  –  JM

2L  2010  

10  

MulHple  Kinds  of  Robots  

Page 11: Talking to Robots with Pharo

Heterogeneity  Challenge  •  Different  sensors  &  actuators  •  Different  shapes  &  sizes    •  Different  compuHng  capabiliHes  

11  

Page 12: Talking to Robots with Pharo

Heterogeneity  Challenge  12  

Different  low-­‐level  algorithms  

Different  Drivers  &  Protocols  

Page 13: Talking to Robots with Pharo

Heterogeneity  Challenge  13  

Different  low-­‐level  algorithms  

ImplementaHons  exist  

Different  Drivers  &  Protocols  

Page 14: Talking to Robots with Pharo

14  

Physical  Environment  

Robot  

Actuator  Actuator  Computer  

Sensor  Sensor  Sensor   Actuator  Actuator  Actuator  

Algo  Algo  C,  C++  Python  

     

Page 15: Talking to Robots with Pharo

15  

Physical  Environment  

Robot  

Actuator  Actuator  Computer  

Sensor  Sensor  Sensor   Actuator  Actuator  Actuator  

Algo  Algo  C,  C++  Python  

?        

Page 16: Talking to Robots with Pharo

16  

Physical  Environment  

Robot  

Actuator  Actuator  Computer  

Sensor  Sensor  Sensor   Actuator  Actuator  Actuator  

Middleware  

Algo  Algo  C,  C++  Python  

     

Page 17: Talking to Robots with Pharo

17  

Physical  Environment  

Robot  

Actuator  Actuator  Computer  

Sensor  Sensor  Sensor   Actuator  Actuator  Actuator  

Algo  Algo  C,  C++  Python  

     

Page 18: Talking to Robots with Pharo

18  

Physical  Environment  

Robot  

Actuator  Actuator  Computer  

Sensor  Sensor  Sensor   Actuator  Actuator  Actuator  

Algo  Algo  C,  C++  Python  

     

Page 19: Talking to Robots with Pharo

Robot  Guide  using  19  

•  Museum  •  Hospital  •  Shopping  Mall  •  …  

Page 20: Talking to Robots with Pharo

Robot  Guide  using  20  

•  Museum  •  Hospital  •  Shopping  Mall  •  …  

Page 21: Talking to Robots with Pharo

Laser  Scans  à  Map  

Page 22: Talking to Robots with Pharo

Annotated  Map  

Page 23: Talking to Robots with Pharo

Robot  Guide  using  23  

Motor  Odometer   Motor  Odometer  Rangefinder  Rangefinder  Rangefinder  

Proprietary  SoCware  

Page 24: Talking to Robots with Pharo

Robot  Guide  using  24  

Path    Planner  

LocalizaHon  System  

Motor  Odometer   Motor  Odometer  Rangefinder  Rangefinder  Rangefinder  

Proprietary  SoCware  

Page 25: Talking to Robots with Pharo

Robot  Guide  using  25  

Path    Planner  

LocalizaHon  System  

Motor  Odometer   Motor  Odometer  Rangefinder  Rangefinder  Rangefinder  

Proprietary  SoCware  

App  

Bridge  

Page 26: Talking to Robots with Pharo

Talking  to  

with  

Page 27: Talking to Robots with Pharo

Talking  to  

with  

Page 28: Talking to Robots with Pharo

Talking  to  

with  

(Talk  Today)  

Page 29: Talking to Robots with Pharo

More  Challenges  29  

Page 30: Talking to Robots with Pharo

More  Challenges  30  

Changing  CondiHons  

Resource  Constraints  (RAM,  CPU,  Ba"ery...)   Hardware  

+  SoCware  IntegraHon  

Page 31: Talking to Robots with Pharo

More  Challenges  31  

Self  Adapta;on  

Changing  CondiHons  

Resource  Constraints  (RAM,  CPU,  Ba"ery...)   Hardware  

+  SoCware  IntegraHon  

Page 32: Talking to Robots with Pharo

More  Challenges  32  

Smalltalk  +  FPGA  

(Talk  Tomorrow)  

Resource  Constraints  (RAM,  CPU,  Ba"ery...)   Hardware  

+  SoCware  IntegraHon  

Page 33: Talking to Robots with Pharo

More  Challenges  33  

TDD  

Hardware  +  SoCware  IntegraHon  

Page 34: Talking to Robots with Pharo

34  

Physical  Environment  

Robot  

Actuator  Actuator  Computer  

Sensor  Sensor  Sensor   Actuator  Actuator  Actuator  

SoCware  SoCware  SoCware  

Page 35: Talking to Robots with Pharo

35  

Physical  Environment  

Robot  

Actuator  Actuator  Computer  

Sensor  Sensor  Sensor   Actuator  Actuator  Actuator  

SoCware  SoCware  SoCware   Safety  

Page 36: Talking to Robots with Pharo

36  

Simula;on  

Safety  

Page 37: Talking to Robots with Pharo

37  

SimulaHon  

Noise  

Resources  

Failure  

Asynchrony  

Precision  

Page 38: Talking to Robots with Pharo

Methodology  for  Safe  TDD  

•  Ensure  emergency  stop  working!  • Order  tests  – Sensors  before  actuators  – Controlled  environments  before  open  ones  – StaHc  environments  before  dynamic  ones  

•  Run  test  only  if  prerequisites  pass  

38  

Page 39: Talking to Robots with Pharo

Methodology  for  Safe  TDD  

•  Ensure  emergency  stop  working!  • Order  tests  – Sensors  before  actuators  – Controlled  environments  before  open  ones  – StaHc  environments  before  dynamic  ones  

•  Run  test  only  if  prerequisites  pass  

39  

Page 40: Talking to Robots with Pharo

Methodology  for  Safe  TDD  

•  Ensure  emergency  stop  working!  • Order  tests  – Sensors  before  actuators  – Controlled  environments  before  open  ones  – StaHc  environments  before  dynamic  ones  

•  Run  test  only  if  prerequisites  pass  

40  

Page 41: Talking to Robots with Pharo

Methodology  for  Safe  TDD  

•  Ensure  emergency  stop  working!  • Order  tests  – Sensors  before  actuators  – Controlled  environments  before  open  ones  – StaHc  environments  before  dynamic  ones  

•  Run  test  only  if  prerequisites  pass  

41  

BoTest  Framework  

Page 42: Talking to Robots with Pharo

42  

the    

Future  is  

RoboHcs  Let’s    make  it  with    

Smalltalk  

Page 43: Talking to Robots with Pharo

43  

10  000  000+  

Page 44: Talking to Robots with Pharo

Big  Players  Invest  in  RoboHcs  •  Amazon  Drones  for  Parcel  Delivery  

44  

Page 45: Talking to Robots with Pharo

Big  Players  Invest  in  RoboHcs  •  Google  Self-­‐Driving  Car    

45  

Page 46: Talking to Robots with Pharo

Big  Players  Invest  in  RoboHcs  •  Google  Self-­‐Driving  Car    

46  

Google  Bought  8  RoboHcs  Companies  in  

2013!  

Page 47: Talking to Robots with Pharo

47  

the    

Future  is  

RoboHcs  Let’s    make  it  with    

Smalltalk  

Page 48: Talking to Robots with Pharo

48  

the    

Future  is  

RoboHcs  Let’s    make  it  with    

Smalltalk  

Page 49: Talking to Robots with Pharo

49  

Thank  you  !  

Page 50: Talking to Robots with Pharo

Noury  Bouraqadi,  Luc  Fabresse,  Jannik  Laval  h"p://car.mines-­‐douai.fr  

Talking  to  

with