Jump to content

Terenceang

Members
  • Content Count

    30
  • Joined

  • Last visited

Everything posted by Terenceang

  1. Looks great... let me know how it is working for you.
  2. the IMU is working and pretty stable. but the motion seem to have some dampening effect at the end, if you bank 45 degrees, it will go to 40 degree then slowly go to 45... have to study more to figure out why.. maybe the sampleing rate or some time related maths. code is updated!!
  3. Hi Tim, add an event counter in the breakpoint window and set breakpoint between the instructions you want to count, enable and disable the counter to reset. you can find the instructions in the FPU lab segment in the Stellaris tutorial, Cheers, Terence.
  4. ok, everything is working fine, except some how after the fix, pitch and roll is mixing into each other's axis. rechecking all the axis.
  5. eliminated the inverse sqaure root issue. 1.0f / sqrtf(x) instead. 104 cycles with fpu, 150 cycles without fpu, 107 with fast invsqrt routine.
  6. thanks now i understand it better..
  7. 1. Bluehash-----------------2--------------------US 2. Gwdeveloper-----------1---------------------US 3. Reaper7-----------------1---------------------PL 4. DanAndDusty-----------1--------------------UK 5. JKabat--------------------2--------------------US 6. PentiumPC---------------1--------------------SG
  8. @Darmurg, you might want to check this out. runs ont the 430. http://invensense.com/mems/gyro/documents/PB-MPU-9150IMF%20MotionFit%20Wireless%20Developer%20Kit%20Product%20Brief.pdf
  9. I tot of STMF32F3, similar setup as the PX4, maybe easier to port.. @Fred, if you have time to look at the code, I am getting running error on the Roll axis, and after fixing the update rate to 100Hz. I am getting some scaling error. I will look at it again this week end.
  10. https://code.google.com/p/stellaris-lp-imu/source/browse/#svn%2Ftrunk%2Fstellaris-lp-imu the code is for UART1. not updated to use the UI. Please update us with you mocap experiment, thanks.
  11. I am making changes to regulate the timing for the AHRS updates.. All this is pretty new to me, I am getting good Yaw and Pitch reading but roll is way off, It goes 1 way and won't return to level after awhile, seem to accumulate some error over time.
  12. That is my exact set up, just change the code from UART0 to UART1 if you use this LP booster, I have it mounted on the bottom of the Stellaris. you got to check the truck for the source. https://code.google.com/p/stellaris-lp-imu/source/browse/#svn%2Ftrunk%2Fstellaris-lp-imu
  13. No Bugs, looking at the code you just need to send "Roll, Pitch and Yaw" Data thru the com port, in "R","P","Y"! sequence with delimiters. I just need to quickly visualise the sensor's data.
  14. No, the UI is from Ti, from fro MPU-9150 and MSP430..haha.. http://www.ti.com/lit/an/slaa518a/slaa518a.pdf
  15. It is actually very simple. I am a few days old to the Stellaris hopes this helps. Matching pins for MSP430LP. // // Enable GPIO port A which is used for UART0 pins. // TODO: change this to whichever GPIO port you are using. // ROM_SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOB); // // Configure the pin muxing for UART1 functions on port PB0 and PB1. // This step is not necessary if your part does not support pin muxing. // TODO: change this to select the port/pin you are using. // ROM_GPIOPinConfigure(GPIO_PB0_U1RX); ROM_GPIOPinConfigure(GPIO_PB1_U1TX); // // Select the alternate (UART) function for these pins. // TODO: change this to select the port/pin you are using. // ROM_GPIOPinTypeUART(GPIO_PORTB_BASE, GPIO_PIN_0 | GPIO_PIN_1); // // Initialize the UART for console I/O. // UARTStdioInitExpClk(1, 38400);
  16. First test.. at 5:52am.. got get some Zzzz.. Church and lessons to cover till 3pm.. arghh!
  17. Actually all the codes are bits and pieces from all over the place, I am quite lost with the maths, and I am still learning, credits goes to LPC Port of the FreeIMU libraries. I have 3 quads, 1 F450, 1 x HK Mirco Hexa and, 1 x HK Mirco Quad. I have APM with GPS and Sonar on the F450, flew well for a while (flying robot) but decide to do teh flip of death out of no reason, I suspect it is an ESC problem but I cannot duplicate the problem in a controlled manner. ESC are all SimonK flashed so no cut off etc. It is grounded since then we have bad weather since dec, and it rained when ever I charge my batts. Hence the smaller hexa and quads, I am putting a mutiwii with GPS on the Hexa, let's see how it flies.
  18. Thanks, I am ok for now, I know there are some guys here working on IMUs as well. hopefully this can be a good community project. I managed to get the calibration routines done but somehow the roll axis is still not right. Saving to EEPROM is working now so I dont have to hard code the calibration. On a side note, I just built a Hobby king mirco hexa.. this thing flies awesomely with the KK board, simply plug in and it flies ... haha.. The stellaris Launchpad is a wonderful powerful little board, learn so much about it the pass few days..
  19. This is a project for me to learn programming on the Stellaris, with tons of materials, support from TI, this and other forums, I managed to get a working port going for this project. I ported part of the FreeIMU library to the Stellaris Launchpad, just enough to support the GY-80 that I have in my "gadget box". GY-80 consist of 4 sensors, L3G4200D (Gryo), ADXL345 (Acc), HMC5883L (Mag) and BMP085 (Baro). This is a cheap sensor board that is readily available on ebay or your favourite Chinese online store. What is working? Reading and writing to the sensors by i2c bus (thanks to the code from "aBUGSworstnightmare"). calibration routine works but it is not saved to EEPROM. Basically it display the Roll, Pitch, Yaw, compass heading and all sensor's Raw data thru the Uart Console (I am using BT on UART1, change it to UART0 for ICDI port.) Overall it is still buggy and I still cannot reset the Roll setting. Todo. 1. save calibration data to EEPROM. 2. host software for graphical representation of data. 3. fix bugs. As I am a RC fan, it will be thrilling to see the Stellaris on a Quadcopter, if this goes well, I will go on develop it further, with newer gens of sensors. I dont know if I can pull it off or not, hopefully someone else can either help or work on it. The project is up on google code, anyone interested to work on it, please let me know. https://code.google.com/p/stellaris-lp-imu/
  20. Since I am learning to program the Stellaris Launchpad, I tot is is good to share some useful marcos. Please feel free to correct and improve them and share your macros. Here is 1 for the 3 LaunchPad LEDs. #define RED GPIO_PIN_1 #define GREEN GPIO_PIN_2 #define BLUE GPIO_PIN_3 #define on 1 #define off 0 #define LED_INIT() { ROM_SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOF); ROM_GPIOPinTypeGPIOOutput(GPIO_PORTF_BASE, RED | GREEN | BLUE);} #define LED(color,sw) {HWREG(GPIO_PORTF_BASE + (GPIO_O_DATA +(color << 2))) = (((color >> 01) << sw) & color);} #define LED_TOGGLE(color) {HWREG(GPIO_PORTF_BASE + (GPIO_O_DATA +(color << 2))) ^= color;} Usage LED_INIT(); LED(RED,1); LED(GREEN,on); LED(BLUE,off); LED(RED,0); LED_TOGGLE(RED); LED_TOGGLE(GREEN); LED_TOGGLE(BLUE);
  21. To all the Engineers / Programmers, hobbyist and many more, I want to thank all of you that made this hobby so enjoyable. The massive amount of info that you guys put out in this and other forums is amazing. Sometime, I ask very stupid and elementary questions, I am a hobbyist, so I can only invest little time to research and learn on the things that I am tinkering on. Every project is a learning experience, I pick things that interest me to learn, to many of us, it is just fun, you guys are just like a mentor or teacher, I just dont have the brains or time to learn but guys are patient and always offer more than what is needed. Many like me don't have engineering background but love to tinker with stuff since young. You might not realise it, but the little code snippet that you put out might just tip me over from giving up to successful project. Once again THANK YOU!!
×
×
  • Create New...