The PIC BOB
BOB is a nice little board that can do a lot:
-
It can be a 4Axis CNC break
out board to hook up to 4 PMinMO compatible
open source standard drivers to a PC or Arduino. (click the link for a picture)
-
Connects to a
PC parallel
port.
-
Connects to an Arduino to make a nice
Control panel, with LCD, switches,
relay driver, external power, and up to 4 steppers.
-
You can stuff it with a Microchip
PIC12F675,
PIC16F675,
PIC16F690,
PIC16F1825
/ PIC16F1829,
PIC18F14K22,
or a
PIC18F14K50)
(provides USB support, but at the cost of the analog input, and X and Y step)
and a crystal or resonator.
-
And the PIC can connect to any of the RLC TTL serial adapters allowing
RS232,
USB, and (eventually) RF communications.
(see note below about FTDI Friend)
-
It can host a standard 44780
LCD panel and provide backlighting
or host the LCD1 Panel (adapting
it to a the 44780 pinout)
-
It can mount 4 pushbutton switches with pull up resistors or 4 small 2 position
screw terminals for easy wiring to external switches or sensors
-
It can drive an external relay (w/optional LED indicator)
-
It supports 6 LEDs (power indicator, relay indicator, and 4 driven LEDs)
-
It can host an LM335H temperature
sensor.
-
It can host a
MAX4080^
high side current sensor.
-
It can provide
+5 volts
from an unregulated power supply or battery.
And all of those can be connected in interesting ways. For example:
-
With the LM335H, LCD panel, and on board PIC you can make a
thermometer.
-
Add the relay driver and switches, reprogram the PIC, and it's a thermostat.
-
With a clock crystal and some more programming the thermostat can be set
for different temps at different times.
-
With the current sensor in place of the temperature sensor, its an ammeter
or a current safety shutdown device.
-
The higher end PICs actually have enough power to provide
ultra low cost motion control: Accepting
G-Code commands from a PC (via the RLC3 USB
adapter) and producing step and direction for several axis CNC Mill, etc...
control.
-
PID servo control is very possible
-
Lower end PICs can still reach enough of the IO lines to
provide
a source of pulses of variable speed for testing stepper drivers,
or whatever.
416012
Special Offer: Contribute source code,
written to work on any of the PIC's supported by this board, using the pin
assignments specified below, and receive a pair of boards, any of the
parts listed above, and color printed copies of the schematic to use in
implementing / debugging your code. All code must be released via
an open source license such as GPL. All code must be written for
freely available IDE/assembler/compilers such as MPLAB and the non-optimized,
free, C compilers.
Changes between version 4-5 and version 6 are indicated
in green
This
spreadsheet
lists the pins and shows how they are shared. Be sure to select the correct
version in the tabs below.
The FTDI friend standard pinout does not match the BOB's
serial connector pinout. Power and Ground are reversed. An FTDI has power
on pin 3 and ground on pin 1, the BOB has power on pin 1 and ground on pin
3. Other that that... Ms. Lincoln... they are the same.
Mechanically, the board is 3.66" x 2.30" with 0.13" or 1/8" diameter
mounting holes positioned as follows:
(measured from the left and bottom of the PCB when upright; LCD and switch
silkscreen visable)
# |
From
Left |
Bottom |
|
1 |
3.20", |
0.10" |
|
2 |
1.20", |
0.10" |
|
3 |
0.10", |
0.50" |
|
4 |
3.55", |
1.13" |
|
5 |
0.10", |
2.15" |
|
See also:
-
http://picprog.strongedge.net/bootloader/bootloader.html
VeggiePete's very nice PIC18F bootloader can be used with the PIC18F14K22
and a USB to TTL converter (like the
RLC3)
to load programs. any RS-232 serial device with basic communications software
can be used to update firmware and it loads into high memory, so it requires
(almost) no modification of the user code! "The only change that the user
program needs to work in harmony with my bootloader is that two GOTO statements
must be placed {starting} at memory location 0x0000. The bootloader
will change the first one when the user program is written to flash
memory."
-
http://wiki.pinguino.cc/index.php/Basics The Version 4
bootloader for Pinguino (an open source
Arduino-like IDE and set of dev boards targeting PIC's with USB support)
includes (untested) support for the PIC18F14K50 chip. The IDE is cross platform
(Win, MAC, Linux) and provides C, C++ and libraries to make those look like
the Arduino Sketch language.
Questions:
-
steve@barnicki.com asks: "
Hello,
Do you have a part list for the BOB? i.e. which regulators, connectors, passive components, etc. Thank you."
James Newton of MassMind replies: Hi Steve,
Yes, most of that is documented, but the trick is that the board has so many uses that many of those values change depending on the application. The ones that don't are documented on the schematic on this page, and the ones that do are (mostly) documented on each of the specific application pages linked above. E.g. if you are using it as a parallel port breakout, click that link and the page will tell you all about the power regulator options, etc...