Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: CURRENT_CONTROL IIR LSM9DS0 MEDIAN_FILTER PID QEI RF24 SENSOR_FUSION mbed
Revision 0:150bb4605023, committed 2016-04-21
- Comitter:
- adam_z
- Date:
- Thu Apr 21 07:51:53 2016 +0000
- Child:
- 1:ddc39900f9b8
- Commit message:
- sensor data aq
Changed in this revision
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/LSM9DS0.lib Thu Apr 21 07:51:53 2016 +0000 @@ -0,0 +1,1 @@ +http://developer.mbed.org/teams/LDSC_Robotics_TAs/code/LSM9DS0/#48eb33afd0fa
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/PID.lib Thu Apr 21 07:51:53 2016 +0000 @@ -0,0 +1,1 @@ +http://developer.mbed.org/teams/LDSC_Robotics_TAs/code/PID/#7f9b4ca968ae
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/QEI.lib Thu Apr 21 07:51:53 2016 +0000 @@ -0,0 +1,1 @@ +http://developer.mbed.org/teams/LDSC_Robotics_TAs/code/QEI/#205d0280632a
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp Thu Apr 21 07:51:53 2016 +0000
@@ -0,0 +1,81 @@
+#include "mbed.h"
+#include "PID.h"
+#include "LSM9DS0.h"
+#include "QEI.h"
+
+#define Ts 0.001
+
+LSM9DS0 sensor(SPI_MODE, D9, D6);
+Serial pc(SERIAL_TX, SERIAL_RX);
+
+Ticker WIPVTimer;
+void WIPVTimerInterrupt();
+
+DigitalOut led1(LED1);
+
+int main()
+{
+ //float abias[3], gbias[3];
+
+ pc.baud(115200);
+ if( sensor.begin() != 0 ) {
+ pc.printf("Problem starting the sensor with CS @ Pin D6.\r\n");
+ } else {
+ pc.printf("Sensor with CS @ Pin D9&D6 started.\r\n");
+ }
+ //sensor.calLSM9DS0(gbias, abias);
+ sensor.setGyroOffset(38,-24,-106);
+ sensor.setAccelOffset(-793,-511,300);
+
+ WIPVTimer.attach_us(WIPVTimerInterrupt, 1000.0);
+ while(true) {}
+}
+
+
+void WIPVTimerInterrupt()
+{
+
+ /*
+ int16_t data_array[6];
+
+ data_array[0] = sensor.readRawAccelX();
+ data_array[1] = sensor.readRawAccelY();
+ data_array[2] = sensor.readRawAccelZ();
+ data_array[3] = sensor.readRawGyroX();
+ data_array[4] = sensor.readRawGyroY();
+ data_array[5] = sensor.readRawGyroZ();
+
+ pc.printf("%d, ", data_array[0]);
+ pc.printf("%d, ", data_array[1]);
+ pc.printf("%d, ", data_array[2]);
+ pc.printf("%d, ", data_array[3]);
+ pc.printf("%d, ", data_array[4]);
+ pc.printf("%d;\r\n ", data_array[5]);
+ */
+
+
+ float data_array[6];
+
+ data_array[0] = sensor.readFloatAccelX();
+ data_array[1] = sensor.readFloatAccelY();
+ data_array[2] = sensor.readFloatAccelZ();
+ data_array[3] = sensor.readFloatGyroX();
+ data_array[4] = sensor.readFloatGyroY();
+ data_array[5] = sensor.readFloatGyroZ();
+
+ sensor.complementaryFilter(data_array, Ts);
+
+ pc.printf("%5.4f, ", sensor.pitch);
+ pc.printf("%5.4f ", sensor.roll);
+ pc.printf("%5.4f, ", data_array[0]);
+ pc.printf("%5.4f, ", data_array[1]);
+ pc.printf("%5.4f ", data_array[2]);
+ pc.printf("%5.4f, ", data_array[3]);
+ pc.printf("%5.4f, ", data_array[4]);
+ pc.printf("%5.4f;\r\n", data_array[5]);
+
+
+
+ led1 = !led1;
+
+}
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mbed.bld Thu Apr 21 07:51:53 2016 +0000 @@ -0,0 +1,1 @@ +http://mbed.org/users/mbed_official/code/mbed/builds/082adc85693f \ No newline at end of file

