m3Dpi robot, based on the Pololu 3pi and m3pi. m3Dpi has multiple distance sensors, gyroscope, compass and accelerometer sensor to be fully aware of its environment. With the addition of xbee or nrf24n01 module it has wireless communication capabilities.

Dependencies:   m3Dpi mbed-rtos mbed MbedJSONValue

Committer:
sillevl
Date:
Wed Aug 30 11:54:19 2017 +0000
Revision:
17:b73fcdb828f3
Parent:
13:d6374484b953
demo distance sensors

Who changed what in which revision?

UserRevisionLine numberNew contents of line
sillevl 11:ccb8653e285f 1 #pragma once
sillevl 11:ccb8653e285f 2
sillevl 11:ccb8653e285f 3 #include "mbed.h"
sillevl 11:ccb8653e285f 4 #include "M3Dpi.h"
sillevl 11:ccb8653e285f 5
sillevl 11:ccb8653e285f 6 // TODO: only report if value is different?
sillevl 11:ccb8653e285f 7 class Reporter
sillevl 11:ccb8653e285f 8 {
sillevl 13:d6374484b953 9 protected:
sillevl 11:ccb8653e285f 10 mbed::Stream* out;
sillevl 11:ccb8653e285f 11 const char* id;
sillevl 11:ccb8653e285f 12 public:
sillevl 11:ccb8653e285f 13 Reporter(mbed::Stream* _out, const char _id[]);
sillevl 11:ccb8653e285f 14 virtual void time(time_t seconds) = 0;
sillevl 11:ccb8653e285f 15 virtual void distance(m3dpi::Distance distance) = 0;
sillevl 11:ccb8653e285f 16 virtual void acceleration(m3dpi::Acceleration acc) = 0;
sillevl 11:ccb8653e285f 17 virtual void direction(m3dpi::Direction direction) = 0;
sillevl 11:ccb8653e285f 18 virtual void rotation(m3dpi::Rotation rotation) = 0;
sillevl 11:ccb8653e285f 19 };