380 likes | 960 Views
Remote System Restarter ECE 4542-01: Senior Design II Mississippi State University November 29, 2005 Presentation Overview Background Information Accomplishments Design Requirements Hardware Aspects Software Aspects PCB Layout Remote Control System Access Access computer from anywhere
E N D
Remote System Restarter ECE 4542-01: Senior Design II Mississippi State University November 29, 2005
Presentation Overview • Background Information • Accomplishments • Design Requirements • Hardware Aspects • Software Aspects • PCB Layout
Remote Control System Access • Access computer from anywhere
Uses • File Access • Homework • Personal Files • Server Update • Web Updates • Maintenance • Technical Support • Computer Assistance • Helping a Friend
Problem • System Freeze • Power Outage
Team Assignments Thomas Brown PIC software Audio Playback PC interface Lindsey Coggin Team Leader PIC software Audio Playback DTMF decoding Ken Bush PCB Layout Testing Bret Birdwell Ring Detection PC interface Hook control Dr. Follett Advisor
Accomplishments • Interface with an answering machine • Answer telephone after set number of rings • Fit into the PCI slot • Land-line button presses – 100% • Cellphone button presses – 100% except for buttons 1,2,3 • Clear and understandable audio • Perform Desired Power option
Accomplishments cont.. • Will go into a locked state • Allow user to program 5 digit access code and number of rings to answer • Inform current state of device
Hardware Flowchart Telephone Network Ring Detection PIC Hook Control DTMF Decoder PC Interface Audio Playback
Ring Detection Microcontroller will need to have ability to count number of rings • Convert 90V AC ring signal to 5V DC pulses • Use input pin on microcontroller for counting pulses
Ring Detection • Build or use IC with ring detection? • Decision: Build it!! • ICs would have wasted functionality • ICs also would cost more • We built it at a cost of 2.73 for 1 and 1.30 for 1000 • IC’s start at around 4 dollars
DTMF Decoder • Dual Tone Multifrequency (DTMF) Decoder used to decode button presses of touch-tone keypad • Allows RSR to receive commands from user
DTMF Decoder • Used CM8870 DTMF Decoder IC • Four output pins connected as inputs to microcontroller • Output is 4-bit binary number • Cheap and simple
Audio Playback • Audio playback –we needed to play recorded messages to user as instructions • Options: • EEPROM with DAC • Audio Record/Playback IC
Problems: • Serial EEPROMs: • Overclocking I2C SCL line • Not enough address pins • Parallel EEPROMs: • Expensive ($40 for 1MB) • We would need four 1MB to for 60 sec • Would use too many I/O pins on microcontroller
ISD5116 • Audio Record/Playback IC • Analog inputs and outputs • Can store analog or digital data • Can store 8 minutes of audio • Controlled via I2C bus
Relays • Minimum Requirements: • Coil voltage of 5V • High coil resistance • Current rating of at least 20mA • FCC Part 68 compliant
Test Plan • Each part tested independently before added to the rest of the circuit • Ring Detection • Used PSpice to draw and simulate circuit • Connected to telephone network and called • Check output with oscilloscope • Voltage Regulators • Use oscilloscope to check voltage supplied to circuit • DTMF Decoder • Diodes used at output pins to visually see decoded key press • Hyperterminal was also used to see DTMF results
Voltage supply from PC • The voltage supplied from the stand by 5VDC pin of the computer power supply is 5.04V
Ring Detection Circuit Output • Output of Ring detection circuit is low while ringing for 2.3 sec and high in between rings for 3.7 sec.
Software • Three layers • Top layer: PIC software (FSM) • Finite State Machine controls everything • Middle layer: ISD functions • Invoked by FSM to control audio chip • Bottom layer: I2C functions • Invoked to provide communication between PIC and audio chip
Top layer: PIC software (FSM) • The FSM uses the bottom two layers. • FSM implemented using a C switch statement like below: #define firstState = 0; #define secondState =1; unsigned char state: state= firstState; switch(state){ case firstState: // do some operations break; case secondState: // do some operations break; }
Top layer: PIC software (FSM) • The FSM makes control of the program very easy. • Our device has 14 states:
Middle layer: ISD functions • ISD functions enable audio playback of messages • ISD functions use the bottom layer I2C functions • Playback function: • isd_play_address(unsigned int address); • Stop playback function: • isd_stop( );
Bottom layer: I2C functions • Popular communication protocol • Used on the master chip (PIC18) to communicate with: • ISD5116 Audio Chip
Testing Software • Thorough testing of the FSM is important. • Hyperterminal is the tool used to do this using printf statements. • monitor current state • monitor what buttons are being pressed • monitor interrupt timer • monitor variable values • A simple example: • printf(“current state = onHook”);pcrlf;
Time Line Aug. 18 Sept. 18 Nov. 28 Oct. 18 Nov. 18 Schematic 100 % Initial PCB Layout Finished and In Hand 100% PCB Population Populated Testing 100% DTMF Troubleshooting 90% Audio Troubleshooting 100% PIC Software Testing/Fine Tuning 100%
Actual Size Used • 6.6” X 3.5” - Cut off .7” to avoid the PCI slot, we are using wiring harness instead, much easier to use, and no drivers needed.
PCB Layout • Used ORCAD to lay out board • Two iterations to complete, an initial prototype and a production board
Attachment to PC • Using PCI slot face plate • Attached board via L-Brackets. • Face plate has 1 slot for double phone jack, 2 holes for switches, and 2 holes for board mounting.
Acknowledgements • Dr. Randy Follett • Dr. Robert Reese • Dr. James Harden