corrected error assignation of motors in methods right and left. now it work fun. Added function to read calibrated sensors data.
Fork of m3pi by
Revision 9:0764f5bf6ab9, committed 2013-11-04
- Comitter:
- bouaziz
- Date:
- Mon Nov 04 22:17:27 2013 +0000
- Parent:
- 8:4b7d6ea9b35b
- Commit message:
- Correction : left and right motor method are correct now !!!; added function to read 5 reflective sensors in array.; S Bouaziz
Changed in this revision
m3pi.cpp | Show annotated file Show diff for this revision Revisions of this file |
m3pi.h | Show annotated file Show diff for this revision Revisions of this file |
diff -r 4b7d6ea9b35b -r 0764f5bf6ab9 m3pi.cpp --- a/m3pi.cpp Thu May 12 13:26:37 2011 +0000 +++ b/m3pi.cpp Mon Nov 04 22:17:27 2013 +0000 @@ -43,11 +43,11 @@ } void m3pi::left_motor (float speed) { - motor(0,speed); + motor(1,speed); } void m3pi::right_motor (float speed) { - motor(1,speed); + motor(0,speed); } void m3pi::forward (float speed) { @@ -112,6 +112,15 @@ return(fpos); } +void m3pi::calibrated_sensors(unsigned short ltab[5]) { + unsigned i; + _ser.putc(SEND_CALIB_SENSOR_VALUES); + for(i=0;i<5;i++){ + ltab[i] = (unsigned short) _ser.getc(); + ltab[i] += _ser.getc() << 8; + } +} + char m3pi::sensor_auto_calibrate() { _ser.putc(AUTO_CALIBRATE); return(_ser.getc());
diff -r 4b7d6ea9b35b -r 0764f5bf6ab9 m3pi.h --- a/m3pi.h Thu May 12 13:26:37 2011 +0000 +++ b/m3pi.h Mon Nov 04 22:17:27 2013 +0000 @@ -32,6 +32,7 @@ #define SEND_SIGNATURE 0x81 #define SEND_RAW_SENSOR_VALUES 0x86 +#define SEND_CALIB_SENSOR_VALUES 0x87 #define SEND_TRIMPOT 0xB0 #define SEND_BATTERY_MILLIVOLTS 0xB1 #define DO_PLAY 0xB3 @@ -163,7 +164,12 @@ * 1.0 means the line is on the right */ float line_position (void); - + /** lecture capteurs calibres + * @returns tableau val capteurs de gauche à droite + * 0 blanc (reflexion max) + * 1000 noir (pas de reflexion) + */ + void calibrated_sensors(unsigned short ltab[5]); /** Calibrate the sensors. This turns the robot left then right, looking for a line *