SSC-32 architecture update proposal, continued…
So how does the proposal stack up versus the goals?
** Bi-directional communication with Hitec servos to read position.* Supported by the hardware. SMOP (Simple Matter of Programming
).
** Support as many analog inputs as possible.* Every I/O pin will be configurable as an analog input. SMOP.
** Change to larger, more robust connectors.* Independent of the architecture change. Check.
** Support USB instead of RS-232.* Independent of the architecture change. Check.
** 5V I/O on all pins.* The 32 servo I/O are driven by 5V parts. The ABCD inputs will connect to the main 3.3V processor via voltage dividers to bring them to 3.3V levels. Check.
** Identical command structure and behavior as the existing SSC-32, but with new commands for new capabilities.* SMOP.
** Less susceptibility to resets due to low battery voltage.* The main processor is specified to operate to 2.0V, and the coprocessors to 1.8V. Check.
** Restructure code for easier maintenance.* The main processor code will be made much less complex by moving the timing-critical stuff to the coprocessors. Check.
** Use free development tools (e.g. GCC compiler).* Check, with the free version of MPLAB C30. (The coprocessors would be coded using the free MPLAB assembler.)
** Minimize BOM cost impact of enhancements.* Depends. Here is a summary of the cost differences (at Digi-Key) in comparison with a USB board based on the ATmega328.
Q=25, ATmega328 = $2.40, PIC24FJ32GA002 = $2.60
Q=100, 74HC595 = $0.30, PIC16F720 = $0.88
Q=1000, 3.3V LDO, LP2981-33DBVR = $0.28, 3.3uF tantalum = $0.10
Q=1000, level shifter for I2C, dual BSS138 MOSFET = $0.15
I think I got the big items. There will be some resistors and caps that will add up to pennies. The totals are:
- Main processor delta = $0.20 at very low quantities, will probably be much less at production quantities
- Coprocessor delta = 4 * $0.58 = $2.32 at Q=100, will be somewhat less at production quantities
- 3.3V regulator and output cap = $0.38
- Level shifter = $0.15
- TOTAL = $3.05
So the parts for this board will cost about $3 more than for a USB board based on the ATmega328 and shift registers. This is just a ballpark estimate. I suspect that once the China purchasing works it over, the number will decrease, but there is no guarantee.
For the additional $$ you get bi-directional servo comms, analog inputs, better low-voltage performance, a more powerful processor, and easier code maintenance/enhancements.
Let me know what you think.
Thanks,
Mike