Pages: [1]   Go Down
Author Topic: Microcontroller program help !  (Read 395 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 27
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Could anyone help me i was asked to develop a microcontroller program to perform closed loop feedback using an IMU.
Logged

Global Moderator
Offline Offline
Brattain Member
*****
Karma: 480
Posts: 18732
Lua rocks!
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

http://en.wikipedia.org/wiki/IMU

Quote
IMU may refer to:

    Inertial measurement unit
    Initial markup
    Intensive Management Unit - a type of prison in the United States usually practicing solitary confinement
    Interactive Member Universal
    Interactive Marketing Unit
    International Mathematical Union
    International Medical University
    Interurban Multiple Units used by Citytrain
    Islamic Movement of Uzbekistan
    Israel Mathematical Union
    Italian Mathematical Union
    The Irish Medical Union - now renamed the Irish Medical Organisation.
    The Indiana Memorial Union on Indiana University Bloomington campus

Are you planning to interface with a type of prison?
Logged


Offline Offline
Edison Member
*
Karma: 58
Posts: 2078
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

The Arduino is the best microcontroller to do so. Lots of example is code is available, and we are glad to help.

A closed loop is software that controls motion with sensors. For example a balancing robot.
http://en.wikipedia.org/wiki/Closed_loop  (read the 'feedback' and the 'PID controller')

An IMU is a few sensors together, needed to control for example that balancing robot.
http://en.wikipedia.org/wiki/Inertial_measurement_unit

I guess you need an IMU, but also a few motors or servo motors.

Search for "arduino balancing" or "arduino self leveling", you will find many projects.
Here are a few:
https://sites.google.com/site/onewheeledselfbalancing/Home/easy-build-low-cost-arduino-self-balancer
http://sebastiannilsson.com/en/k/projekt/selfbalancing-robot/

But I think you don't have to make a robot, but something like this self-leveling project:




For some IMU boards is good code available, and for others not.
Boards at Sparkfun have good code, https://www.sparkfun.com/search/results?term=imu&what=products

The MPU-6050 sensor board is very cheap on Ebay. Jeff Rowberg wrote a good library for that, https://github.com/jrowberg/i2cdevlib/tree/master/Arduino/MPU6050
And this is the 'teapot' example using that:



You also need motors or servo motors. Servo motors can be easily connected to the Arduino, and the Servo library provides an easy way to control them, http://arduino.cc/en/Reference/Servo

It all starts with an Arduino board. I would suggest the Arduino Uno board, that is the most common and easiest board.
http://arduino.cc/en/Main/arduinoBoardUno
Follow the instructions to set it up, see "Getting Started" on the home page, http://www.arduino.cc/
First thing to do is to get the 'Blink' example running on the Arduino.
« Last Edit: March 08, 2013, 03:41:28 am by Erdin » Logged

Pages: [1]   Go Up
Jump to: