Modular OSMC Brain (MOB) Product Information
The MOB is a flexible high-performance microcontroller interface to the OSMC power controller.
The MOB provides the interface between various command input sources and generates PWM signals to drive
two OSMC boards.
Powered by the Atmel ATMega163 processor running at 8 MHz, the MOB provides ample computing horsepower
for driving the OSMC boards and interpreting and conditioning a range of input sources.
The MOB is the more sophisticated of the two RC/OSMC interfaces offered by Robot Power. The other, the µMOB, is
much smaller, lower cost, and has fewer options. More information on the µMOB may be
The primary and original input source for the MOB board are three standard hobby R/C signals.
These signals conform to the R/C standard in use for many years in a large variety of products. Namely, a nominal
1.5 mS signal which varies in length from 1.0 to 2.0 mS. The pulse repitition frequency is in the 40-60Hz range.
The MOB software considers two of the input channels to be "drive" signals and converts them to a proportional
PWM duty cycle on the OSMC outputs, optionally mixing the into together in a "throttle" and "steering" mode.
The third channel is an "auxiliary" channel which is driven as a SPDT switch
through and opto-isolation circuit. The auxiliary channel is intended to switch high-power loads in an on-off fashion
through an external amplifier such as a relay or other power switching device.
While the primary input mode of the MOB is the R/C interface, the MOB is far from limited to that source.
By using the rich interface resources of the ATMega CPU chip the MOB provides the following interface connections
to the external world:
The current MOB software uses only the buttons. The other interfaces are available for user written
applications. See the image below for the locations of the connectors.
- TTL Serial UART (directly compatible with most RS-232 PC serial ports)
- I2C interface
- SPI interface
- 4 - 10-bit analog A/D input channels
- 4 buttons
The MOB software presents a user-friendly interface to the various system options through the use
of an 20x4 LCD panel and 3-indicator LEDs. 4 command buttons are used to set the options and store
the setup into permanent memory.
Additional features of the MOB include:
- The MOB is powered through the OSMC connector which provides 12V to the on-board 5V regulator.
This regulator produces 5V at up to 1A and may be used to power circuitry connected to
the various external interface ports.
- A battery eliminator circuit (BEC) may be used to power the RC radio receiver
eliminating the need for an addtional battery to perform this function. This option can be disabled by
removing a jumper from the board when not needed.
- Non-volitile EEPROM storage of configuration settings is used to preserve the system setup
during power down.
The MOB software has many user settable options to tune the system to best match your robot and
driving style. This is important where a wide variety of drive systems and robot configurations
exist such as in combat robotics. The user configurable items are set by using the 4 command buttons
on the MOB board or on the optional LCD pendant. These buttons are labeled LEFT, RIGHT, UP, and DOWN
similar to the cursor group on a PC keyboard. The LCD panel is used to display informational
messages to the user and to display the currently selected option and value during setup.
The following configuration options are available in the MOB software (default options are underlined):
The MOB software is written the C language using the free GCC compiler for the AVR family. It uses a Real-Time
Operating System called AvrX written and supported by Larry Barello (www.barello.net).
- PWM Mode - [Sign Magnitude | Locked Antiphase] This option sets the method of driving the
OSMC H-bridge. Generally for large heavy motors Sign Magnitude mode works best.
- PWM Rate - [2kHz | 4kHz | 16kHz | 32kHz] This option sets the frequency of the PWM signal to
the OSMC. The lower frequencies allow the MOSFETs more time to switch on and off and thus allow the bridge to
handle more power without heating. The lower frequencies are in the audible range and may cause the motor
to "sing". The higher frequencies provide smoother control and are inaudible to humans. Generally for heavy
motors the lowest frequency is best and the sound produced by the motor is not too annoying.
- Mix Mode - [Mix | Normal] Selects whether the THRO and DIR RC channels are mixed together for
single sick driving (Mix) or separate for "tank" driving (Normal). Transmitters with built-in mixing may prefer
Normal mode since they RC transmitter generally has fine control over mix ratios and exponential curves etc.
- Output Enable [Enabled | Disabled] By default the software disables the PWM outputs for safety
reasons. Once this option is set to Enabled and the settings are stored the MOB will power-up with outputs enabled.
- Dectect Flip: [Yes | No] Setting this option to Yes causes the motor response to be reversed
when the center pin of the I2C port is grounded. An external switch can be used to detect the flipped condition
of the robot and reverse the motor responses for those robots which can drive inverted.
- Brake Amount: [0% - 100%] This setting adjusts the ratio of braking/coasting when zero speed is commanded
for the motors. 0% braking means at zero speed the motor leads are disconnected and the robot coasts to a stop.
100% braking means at zero speed the motor leads are shorted and the motor stops instantly. This setting is
important for tuning the driving response of robots particularly the larger ones.
- Slew Rate: [0s - 0.25s] This option limits the rate of change of the PWM signal to the motors.
The value set indicates the number of seconds for the PWM signal to change from full-forward to zero or full-reverse
to zero. This reduces stress on the drive train and electronics by allowing the PWM power level commanded to the motors
to change gradually.
- Deadband: [ 02 Counts - 08 Counts] This is the amount of deadband around the zero point the MOB
recognizes as a zero speed command. Different radio systems will have wider or narrower variations in the RC pulse
around the zero point. Computer generated signals such as those from a PC, microcontroller, or IFI system need only
the narrowest deadband setting. The maximum setting of eight counts represents about 10% of the normal stick travel on a
most R/C systems.
Since the MOB software is Open Source all the MOB software source code is available in the downloads
section of the site for inspection or modification. Also on the downloads page are links to the GCC compiler,
AvrX download site, and the PonyProg programming software used to update the software in the MOB. All of this
is freely available for commercial or private use without cost (commercial use of AvrX outside of the OSMC requires
the permission of the author).
More information about the OSMC may be found on the OSMC information page.
Robot Power offers the MOB in fully assembled units, money saving kit form, and as a bare
circuit board. Check the Web store for details on prices and
|Copyright © 2001-2013 Robot Power
2745 Martin Way E, Suite D, Olympia, WA 98506 voice: 360-515-0691
Problems? Contact the Webmaster