ECE 477 Digital Systems Senior Design Project Spring 2007

Homework 3: Design Constraint Analysis and Component Selection Rationale

Due: Friday, January 26, at NOON

Team Code Name: Hazardous Rover Group No. 10

Team Member Completing This Homework: Azad Affif Ishak

e-mail Address of Team Member: aishak@ purdue.edu

Evaluation:

Component/Criterion / Score / Multiplier / Points

Introduction

/ 0 1 2 3 4 5 6 7 8 9 10 / X 1
Analysis of Design Constraints / 0 1 2 3 4 5 6 7 8 9 10 / X 3
Rationale for Component Selection / 0 1 2 3 4 5 6 7 8 9 10 / X 3
List of Major Components / 0 1 2 3 4 5 6 7 8 9 10 / X 1
List of References / 0 1 2 3 4 5 6 7 8 9 10 / X 1
Technical Writing Style / 0 1 2 3 4 5 6 7 8 9 10 / X 1
TOTAL

Comments:

1.0  Introduction

2.0  Design Constraint Analysis

We have narrowed down to four design constrains which are connectivity, power, cost and packaging.

·  Connectivity: This requires us to transmit and receive data over a wireless network to communicate with the vehicle.

·  Power: This requires us to supply enough power to all the parts on the vehicle such as wireless bridge, webcam and microprocessor.

·  Cost: This requires us to set a limit to the expenditure in making the project since it will probably be used a model or a toy.

·  Packaging: This requires us to pick the right parts for the project. The vehicle needs to be sturdy since many parts will be mounted on it, wireless bridge, and mechanical arm, among others.

2.1  Computation Requirements

The project will require the microprocessor to perform a considerable amount of computational/work. Below are the tasks that the microcontroller will handle:

·  Control the mechanical arm (up/down and left/right)

·  Control the speed and direction of the car (forward/reverse and left/right)

·  Communicate with the light sensor to light up LED when the level is below programmed threshold

·  Perform actions based on the commands from web

·  Serve the webpage

·  Control the movement of the camera (pan/tilt)

The human operator will control the vehicle via the web interface which has a live video feed from the webcam. It is vital that the microprocessor is able to react fast upon the instructions from the operator to perform all its tasks at a decent real time speed and also to avoid any unforeseen problems such as collision. MCS9S12NE64 [1] microprocessor clock’s speed can be programmed to operate at a fairly fast/real time rate which we assume to be at least 10 MHz.

2.2  Interface Requirements

This project will have many external components embedded onto the vehicle. The microprocessor MCS9S12NE64 [1] has 4 PWM,8 ATD, Ethernet capability and plenty of GPIO(general purpose Input/Output) pins.

Component / Interface Required
Video Transmission / Wireless
Wireless Bridge / Ethernet port
DC Motor / PWM (1) & General Purpose I/O (2)
Steering Servo / PWM (1)
Pan/Tilt servos for webcam / PWM (2)
Light Sensor / ATD (6) & 1 GPIO
Mechanical Arm / General Purpose I/O (10)
Ethernet / 8 pins 8P8C/RJ45
Programming/Debugging / 9 pins SCI
Battery Life / 1 pin ATD

Table 1 : Interface Requirements

The vehicle is embedded with wireless webcam[2] which will be broadcasted over 802.11g via TCP/IP. It will be mounted at the back of the car for wider view. This will be easily accomplished since a wireless bridge [4] will also be mounted on the car.

The speed and direction of the vehicle will be controlled by using two PWM (pulse width modulator) and two GPIO pins. The speed of the vehicle can be varied by changing the duty cycle of the PWM. Two GPIO and a PWM pins will be used for steering the servo and also controlling the direction of the vehicle.

The human operator will be responsible of controlling the mechanical arm [5] and also avoiding collision. This definitely demands an excellent view of the vehicle’s surrounding from the webcam’s view. In order to achieve that, 2 PWM pins are needed to control pan/tilt servos. Each PWM pins will be programmed to move the servo horizontally and vertically.

The motion of the mechanical arm is controlled by using logic switch. Therefore, ten GPIO pins are needed to control the arm. Another important interface for the project is the 9 pins SCI for programming and debugging of the microcontroller. Additionally, an ATD pin will be used to read the battery life of the vehicle.

The light sensor [6] will sense the ambient light and turn on a bright LED when the level is below a programmed threshold. An external circuit will feed appropriate signal to the microprocessor using ATD pin.

2.3  On-Chip Peripheral Requirements

Given the discussion in the previous section, these are the On-Chip Peripheral required:

·  PWM: 4 pins, to control the H-bridges and the servos

·  ATD: 1 pin, for the light sensor

·  GPIO: 17 pins, for H-bridge control, Headlights LED and arm control

·  SCI: For programming/debugging

·  Ethernet: For data transmission and receiving

2.4  Off-Chip Peripheral Requirements

Below are the Off-Chip peripheral requirements:

·  H-bridge controllers:

An external circuit will be used to control the H-bridge.

·  Mechanical Arm: [5]

Appropriate signal will be sent to the arm’s controller for intended motions.

·  DC-DC step down

The battery will be stepped down to 5V and 3.3V to drive various embedded peripherals on the vehicle

·  Light sensor circuit

The light sensor will sense the ambient light and turn on a bright LED when the level is below a programmed threshold

·  Ethernet bridge [4]

The human operator will communicate with the microprocessor wirelessly using Ethernet bridge.

·  Wireless web camera [2]

A video feed will be streamed from the vehicle to the web-based interface wirelessly.

2.5  Power Constraints

The vehicle will be operated wirelessly and this left for only one option which is completely powered by a battery. Since there are many embedded peripherals will be mounted on the vehicle, power consumption is indeed an important matter to address. The servos, wireless webcam, robotic arm, wireless bridge, the motor and the microprocessor will definitely draw lots of current. The voltage and current requirements for the embedded peripherals are summarized below:

Component / Part
Number / Quantity / V (V) / I (A) Max / Supply Rail
Microcontroller / MCS9S12NE64[1] / 1 / 3.15 – 3.45 / ~ 0.3 / +5V
Wireless Webcam / DCS-900W[2] / 1 / 5 / 0.5 / +5V
Light Sensor[6] / 1 / 5 / 0.02 / +5V
Motor / - / 6 / 12 / 10* / +12V
Robotic Arm / Robotic arm
Trainer Kit
157366[5] / 1 / 5 / 0.7 / +5
Steering Servo / - / 1 / 5 / 0.35 / +5V
Wireless Bridge / DWLG820 [4] / 1 / 5 / 0.25 / +5V
Pan/Tilt servos / HS-300 / 2 / 5 / 0.4 / +5V

Table 2 : Power Constraints

The vehicle will require three power supply voltages. The 12V source will need to supply about one amp of current to drive the motor. The 5V source will need to supply almost two amps to power webcam, wireless bridge and robotic arm. Looking over this constraint, a rechargeable battery works the best for this project.

2.6  Packaging Constraints

The hazardous rover itself is a large robot since it has many peripherals on board. The vehicle needs to be able to carry everything on it and has a large space to fit all the parts. Time and cost constraint to built a vehicle impel us to buy “1:10 R/C Full-Function "Tricked" Hummer – Red” pre-built ($50). The vehicle already has a platform, driving motor, steering servos, plastic shell and big tires. The frame of the vehicle is very big and this provides plenty of room to mount all the components needed for this project. However, an extended platform has to be made at the front of the car to mount the robotic arm [5]. Fortunately, the vehicle is very big and sturdy that we only need to balance the weight of the arm with heavy parts at the back of the vehicle, so that it would not tip off when the arm is grabbing an object. With that in mind, we will stack the battery, wireless bridge and also the web camera at back of the vehicle for weight balancing. The webcam is intentionally will be placed at the back of the vehicle for wider range of view. The shell of the car is quite tall and this will allow the wireless bridge, battery and microcontroller fit beneath it. The microprocessor and main circuitry will be placed in the middle of the car. Fifteen pounds of load were put on the vehicle to test whether it can handle the weight and the result was a success.

2.7  Cost Constraints

The primary cost constraint is to keep the costs as low as possible without compromising the functionality. The intended application of this project will be a toy model for a robot that will operate in a dangerous environment to human being but not severely for the robot. We estimate the cost for prototyping the model will be around $500.00.

3.0  Component Selection Rationale

Microcontroller

The selection of the microprocessor is critical to ensure the successful of the project. The microcontroller will need to be able to handle a considerable amount of computations and provide the peripherals required, Ethernet, among others.

The selecting process for the microcontroller was narrowed down to the one that support Ethernet interface. Freescale and Rabbit both provide microcontrollers with all the peripherals needed for this project. After a detail research was conducted, two outstanding candidates were found and they were Rabbit RCM3200 series and Freescale MC9S12NE64. The summary of the two microcontrollers is shown below:

Rabbit RCM3200 / Freescale MC9S12NE64 [1]
IO pins / 52 / 80
Clock (MHz) / 44 / 25
SRAM / 512k program + 256k data / 8k
Flash / 512k / 64k
SCI / 6 / 2
PWM / 4 / 4
Ethernet / Yes / Yes
Cost / $89 / $18

Table 3: Microcontroller Summary

We opted on Freescale MC9S12NE64 (NE64) [1] for various reasons. The number of GPIO of NE64 is sufficient enough to serve the project. The SRAM and Flash are adequate for the project since we are not going to store large data. In overall, the motivating factors in selecting NE64 processor [1] would be the cost since both of the processors provide all the features needed. Another important reason would be that we had already used H12 family of Freescale microprocessor in previous class.

The vehicle

Two important concerns for choosing type of vehicle are the stability and space compartments. Two candidates were selected and they are 1:10 R/C Full-Function "Tricked" Hummer – Red and 1:24 German LeopardII A5 RC tank.

Full-Function Hummer / German LeopardII
Price / $50 / $40
Size / Very Large / Small/Medium
Stability / High / Medium
Battery Pack / 19.6V NiCad / 19.6V NiCad

Table 4 : Vehicle Summary

We chose the hummer over the tank primarily because of the two constraints of the type of vehicle. The hummer is larger in size and has large space compartments to fit all external peripherals on it. Another reason is since we are going to mount an arm on the vehicle; we need a stable car that can hold it. The hummer has a bigger chassis and larger tires that will hold all the parts intact when it is moving.

The Internet Camera

The search for wireless webcam was quickly narrowed down for one with wireless capability . Two products were compared: D-Link Wireless Internet Camera (DCS900-W) [2] and icamView WC-06-000. Brief summary of the two products is shown in the table below.

D-Link(DCS900-W)[2] / Linksys –WVC54G webcam
Cost / $90 / $160
Resolution / 640 x 480 or 320 x 240 / 640x480 or 320 x 240
Frame Per Second (FPS) / 1, 5, 7, 15, 20 or auto / Up to 30
Netowork interface / 802.11b, 802.3 / 802.11b/g, 802.3

Table 5 : Internet Camera Summary

Both of the cameras have the features needed for a smooth and fast video streaming. Since we are allowed to buy a wireless video camera for this project, we will go with D-Link(DCS900-W) webcam [2] because it is cheaper compare to the other one.

Mechanical Arm

We were looking for a feasible operation of robotic arm that would not require too much mechanical details required to control it. We found two products that suited our constraint: Robotic Arm Trainer [5] and Lynx 5 Robotic Arm Combo kit L5AC-KT. We decided to buy Robotic Arm trainer for two important reasons, cost and complexity. It turned out that the Robotic Arm trainer uses 5 dc motors and is completely control using logic switch whereas the other product uses servo. Since we are running out of PWM on the microprocessor we chose the Robotic arm trainer [5]. Another important reason is that the Lynx 5 robotic arm cost three times higher than the robotic arm trainer.

Battery

We are looking for a battery that is not too heavy but longer battery life. We found out that Power Sonic 12 volt 3.4 Amp [3] hour battery can run at most hour of operation which is pretty good running time. The price is affordable ($15.00) and it is rechargeable. The weight of it is 2.6 lbs which is about the perfect weight to balance the load of the mechanical arm. There are NiMH battery that would last longer but it cost about $100 which is too much for our overall cost budget.