Tower card Form Factor
Connections to allow use with a TRK-MPC5604B Board
1. 5-pin header to connect directly to Freescale Line Scan Camera
2. Header for 2nd linescan camera (optional)
3. RCA Camera Interface. Includes an LMH1981 Sync Extraction chip and connectors to MCU to allow for low resolution (32x32) decoding of signals
- 3-pin Header to connector directly to steering Servo
- 1 Extra Servo header.
- Accepts direct Battery Power – Onboard Switching regulator 5-18v
- Tower Card will source power to other tower modules.
- All circuitry except for motor controller can be optionally powered over USB Connector
- Battery Input and motor Outputs will be a Tyco (TE Connectivity)
- TE Connectivity Screw Terminal http://search.digikey.com/us/en/products/1776275-2/A98036-ND/1826899
- Motor Driver
2x MC33887APVW : Dual, Independent 5A Motor Driving Circuit
Supports forward, reverse and braking.
- Current Feedback to MCU ADC to allow for closed loop torque control
- Integrated Kinetis MK20DN512ZVLL10MCU with OSJTAG
- Can be used stand-alone or be used as a peripheral in the tower system.
- Extra signals from K40 routed to tower edge card connector. Signals for H-bridge, camera and servo can be routed to Tower Edge connector to be driven by another MCU card. Each can be disconnected via jumper. - We will need to crosscheck the signals to all other CPU modules. Would it be easier to just have a version that doesn't have the K40 populated and OSJTAG populated? Also, we may not need jumpers. Simply configure the Kinets I/O to inputs.
- Some basic I/O for debugging. 4-poistion DIP Switch + 4 LEDs.
- Inputs for Tach Signal/Speed Sensor
Schematics (Sent to MyRO on 4.4.2012) - Includes 3d view
Assembly Prints (For Reference)
Rev A Errata:
- Pins 4 & 5 for the camera (Gnd and +3.3v) got swapped on the PCB. You will need to swap the wires in the cable. You can pop the contacts out of the connector housing with tweezers.
- POT0 has a jumper wire to pin 26 (ADC1_SE18 . This was done to put all signals *except* the NTSC video onto ADC1 to simplify software. Future versions will have this change in the artwork
- Some components interfere with the tower connector. It can be mated to about 95%. Will work fine. Future versions will fix this issue
Schematics, Assembly Prints, BOM, etc. - Includes 3d view
Rev B Errata:
- None known!
Google Code repository for the Example Code:
This code works with Rev B of the board (and Rev A). All major interfaces & peripherals have been tested. At some point we will make a video going through the code. By default the Linescan camera code is enabled. The code in Main.c is pretty easy to follow. There is also code for the NTSC camera but must enabled in the TFC_Config.h file via a pre-processor directive.
There is also code used for teh OSTAG interface, Labview demo applications and drivers for the USB
Just verified the OSJTAG. Test Project to blink the battery LED's was downloaded into the K20
Testing the Servo circuits…..
Testing the pots, servos, H-bridges and K20 USB port
Linescan Camera Bringup with Labview
NTSC Camera Bringup with Labview
1.) This is a basic demo of an NTSC camera being brought in using the a Combo of the ADC, port interrupts and DMA transfers.
2.) I *ahem* overclock the ADC to 24MHz to get some extra resolution for a 64x64 pixel image (the first 6 columns are junk as they contain color burst data*)
3.) I decimate the images to a few frames per second to send over the WIFI (the booster pack card I made) to a Labview program. The Kinetis can bring the data in a the same frame rate of the camera, I just need to send much slower as there is some overhead in my communications scheme (ASCII text) and the WIFI is driven via a UART.
4.) In reality, I can get a 64 x 480 pixel image in memory as I pull in all the lines. I just decimate the rows to get a 64x64 result on the labview display.
5.) DMA does most of the work freeing up the CPU to do algorithms in the foreground.