Auto-Aim Camera
Homework 7: Functional Descriptions
Due: April 12, 2013
Prepared by
Jacob Lovelace and Aaron Loichle
Jacob Lovelace / Aaron LoichlePercentage of effort towards this assignment / 50 % / 50 %
Realistic Design Constraints (from report #5)
Economic: The camera mount is going to be marketed towards a target audience very similar to that of GoPro. This audience consists of action sport enthusiasts from ages fourteen to thirty. A GoPro camera sells for anywhere between $200 and $400 depending on the model. The Team hopes to sell the camera mount at a retail price less than or equal to $300. This will keep the mount at a reasonable price, a price that is affordable by most athletes involved in extreme sports. Approximately 30% of revenue will go to the funders, 30% to the Team and 40% to production.
Environmental: The RF transmitter will need to follow specifications set by the Federal Communication Comission (FCC). This should not be difficult because this is not a high frequency project.
Health and Safety: Some consumers of the camera mount may be nervous about putting a RF transmitter on their person. It is important that while marketing this project it is conveyed that there is no danger; the radio waves are harmless. It is a common myth amongst the public that the radio waves emitted from cell phones can cause cancer. This is not true because the frequencies emitted by cell phones and most gadgets are a million times too low to have enough energy to cause ionization in a human cell (humantruth.info). The transmitter in this project will transmit radio waves at similar frequencies to a cell phone, posing no threat to humans or the environment. Accidents are inevitable in the world of extreme sports. It is the Team’s responsibility to ensure that accidents caused by the camera mount are minimal to none. One way this can be done by ensuring that there are no sharp pieces or corners on the mount.
Manufacturability: The camera mount should be manufactured for 40% of the retail price. With the goal retail price of $300, that would put the cost to build it at $120. This is the maximum acceptable cost of manufacturing. Ideally the Team would like to get this price down as low as possible. Mass producing the product and buying materials in bulk is a necessity in driving production cost down. The materials that will be used to construct the mount will all be common materials and consequently will not be difficult to find. The battery will be required to last at least 8 hours straight (the GoPro has a life of 2.5 hours straight use).
Sustainability: The mount will need to withstand extreme conditions as it will be used in various extreme sports. It needs to be strong enough to withstand heavy abuse without failure. Material selection as well as the mechanical construction of the mount will be extremely important in achieving these criteria. The mount will also be subjected to extreme temperatures. This will affect the decision on which microprocessor to use as well as construction materials. The operation of the mount should remain unaffected in cold and hot environments. Another huge necessity of the mount is it needs to be waterproof for watersports.
Professional and ethical responsibilities: The RF transmitter will have to transmit within the allocated frequency band set by the FCC. The Team is ethically responsible to test the product extensively to ensure that it functions as advertised as well as to ensure it is as safe as possible.
Implementation:
When discussing the implementation of the auto-aim camera mount there are quite a few factors to consider. There is the mechanical build of the device, the electronic aspect, the hardware and the programming. The hardware will consist mostly of electronic devices such as microcontrollers, operational amplifiers, servo motors, switches, infrared I/O etc. The mechanical aspect is likely a task to be passed onto an expert of the field but will consist of constructing a sturdy, durable, small and lightweight mount. The software is going to be written on the microcontroller and will control when, where and how the camera is aimed.
Main components to implement:
Microcontroller: One of the most important technologies of the device is it’s “brain”, or its microcontroller. In the case of the prototype an Arduino Uno microcontroller will be used. If this device goes to mass production an Arduino controller will not likely be used. Instead the team will design a custom circuit board accomplishing all necessary electronic tasks with a microcontroller built in. For the case of the prototype however, this Arduino controller will suffice. It is powered by 7-12V, it has 14 input/output pins, a clock speed of 16MHz and has 32KB of flash memory. It is programmed using Arduino software with code written in C. It has dimensions of 2.7x2.1 inches.
Program: It will now be beneficial to discuss the programming aspect to the device that will be written to the microcontroller. Below is a high level flow diagram of the program to be implemented.
The device will remain idle and wait for a button to be pressed on the remote. When the sync button is pressed the device will run through a program to find the transmitter. Once it is found it will then wait for the next command (most likely the START command). Once the program is started it quickly checks that it still knows the location of the device and then runs through a constant loop checking and adjusting the position of the transmitter to the center of the camera frame. The output info of this loop is sent to the servo motors that physically positions the mount. The program stays in this loop until it is broken by the user pushing the stop button once. If the user pushes and holds the stop button for five seconds it will tell the program to power down the device. When building and implementing this program the group will require help from someone fluent in C programming and familiar with Arduino controllers.
Implementation Discussion:
Discussing this diagram in the direction of logical flow, from left to right, the first technology to discuss is the RF Transmitter. The transmitter is powered by a supply of 5v and outputs a signal at a frequency of 315-434 MHz. This device fully operates in the temperature range of -20-85 degrees Celsius. This satisfies the sustainability design constraint. This transmitter is to be enclosed in a protective case containing a 5V battery powering it. The cost of the transmitter is approximately $4. Next to be discussed is the implementation of the device itself. The device will be powered by a 9V 250mAh NiMH high capacity rechargeable battery. The cost of this battery is approximately $5. The RF signal will be received by Hi Sensitivity Receiver module or RF link receiver. This receiver has a frequency range of 434MHz, making it compatible with the transmitter. It has a supply voltage of 5V and costs $5. Next the signal is passed through an RF amplifier. This amplifier (DVGA2-33PP) has a gain of 19dB with a resistance of only 50ohms. The frequency range of the amplifier is 0.05 – 3GHz which more than encompasses the utilized frequencies. This amplifier costs about $8. Once the signal is amplified to a workable level it is passed into the microcontroller through one of the analog inputs. For a detailed description of the microcontroller, see the discussion on the Arduino Uno above. The Arduino controller then runs the program described above with the input of the RF signal. This controller costs $25. This controller would then be coupled with a PID controller to implement a feedback loop and stabilize the motion of the motors. This motion controller (Kangaroo x2) works hand in hand with the Arduino board. It is a two channel self-tuning controller. This motion controller costs $24. The output of this program sends information to the servo motors to position them. This servo operates at a supply voltage of 4.8-6V. It has an operating speed of 0.1sec/60 degree and an output torque of 1.4kg/cm. The servo costs $9. This is the end result of the device; taking the RF signal, analyzing it and then pointing the camera at the transmitter. The final technology to be implemented is the technology concerning the remote control. The remote control itself will have an Infrared transmitter. This transmitter works at a distance of 45 feet and integrates well with an Arduino controller. It has a broadcast angle of 20 degrees and it can be programmed to communicate any arbitrary protocols. The transmitter costs $22. There then needs to be an RF receiver in the mount itself that communicates directly with the Arduino. This programmable IR receiver has two output pins and approximately a fourth the size of a quarter. This receiver costs $10. It is a design option to include a manual aim override. If it were included another necessary part would be the joystick. This joystick would be linked directly to the IR transmitter on the remote which would then send the data ultimately to the main controller. This joystick comes with necessary circuitry and boards. This package costs $6.
Data Sheets:
- Arduino Uno
- RF Transmitter
- 9V battery
- RF receiver
Amplifier
PID
- Servo
- Infrared transmitter
-IR receiver
- joystick
- joystick circuit board
Introduction implementation two:
There are two major components of the auto-aim camera project. The first component is the transmitter. The transmitter will be attached to the target being filmed, and transmit a radio frequency allowing the receiver to locate and track the target.
The second major component of the auto-aim camera system is the receiver. The receiver of the auto-aim camera will be significantly more complex than the transmitter. This is because the receiver will be embedded in the system that processes the incoming signal, and points the camera at the target being filmed. In order to do this the received signal will have to be processed by a microcontroller, which will then control servos to point the camera at the target.
Between the signal being received, the microcontroller, and the camera we will need several pieces of hardware to interface the separate-commercially available components. Below is a description of each of the components, and an implementation block diagram showing an alternative implementation of the auto-aim camera system:
Transmitter Assembly
For this implementation we would use theXBee 1mW Wire Antenna – Series 1 (802.15.4) to transmit the location of the target being filmed. The XBee has a 300ft range, and 8 digital IO pins, which would allow us to interface the XBee with our microcontroller. The XBee requires 3.3V to function, and is available for $22.95 (“XBee”). To power and control the XBee RF transmitter we would use the Arduino Pro Mini 328 -3.3V/8MHz the Pro Mini is compact, and would be sufficient to power and run the XBee transmitter. The Pro mini will work well for us because it also runs at 3.3V, so it could power the XBee, but the Pro Mini will accept a voltage up to 12VDC, so we can power it with a regular 12v battery. The drawback of the Pro Mini is that does not come populated with connectors, so we will have to solder the XBee directly to the board. The Pro Mini is available for$9.95 (”Arduino Pro Mini”). To power the Pro Mini we will use a 9V snap connector and a 9V alkaline battery available for $1.25 and $1.95 at sparkfun.com.
Receiver Assembly
To receive the signal from the transmitter we will use a second XBee. The XBee is a good choice because it can be used for wireless communication with low power consumption. A 3.6V 600mA Lithium battery may last 6-12 month powering an up XBee (XBee Tutorial). The XBee Shield mates the XBee transceiver to any development board. We will be using an Arduino, which has a standard footprint allowing the microprocessor to receive the incoming RF signal from the transmitter attached to the target being filmed. The XBee Shield is available for $24.95 (“Shield”). The shield will attach directly to the Arduino Uno –R3. The Uno-R3 is an open source physical computing platform based on simple I/O board. The Uno-R3 will function as the brain of the auto-aim camera receiving a signal from the XBee on the target being filmed. The Arduino will then process that signal, and rotate the camera to point in the direction of the target.
The microcontroller will be a vital link between the incoming signal and the servo motors. There will two motors controller by the microcontroller. The first motor will pan the camera left and right. The second motor will tilt the camera up and down. The interface between the microcontroller and the motors will be done with the Ardumoto – motor driver shield. This is a motor shield for the Arduino that will control two DC motors. The Ardumoto can drive up to 2 amps per channel, and will take its power from the same Vin line as the Arduino board. This board is available for $24.95 (“Ardumoto”).
It will be important for us to implement a feedback control system to control the motors of the auto-aim camera mount. The 2motor w/feedback control add-on for Arduino Nano will allow us to control up to two DC motors at a maximum of 2 amps per motor. This add-on unit comes with feedback current sense circuitries for both motors independently. This will allow us to control the speed of the motor using Pulse-width modulation (PWM) feedback control. This method of feedback control will allow us to control the speed of the camera rotation by modulating the power sent to the servo motors. This add-on will also allow us to sense the load of the motor and adjust control accordingly. This using is available for $29.95 (“Motor Feedback Control”).
The feedback control unit with output control will be connected to two servos. We found the Servo – Large Full Rotation listed on Sparkfun.com to be a suitable option. These motors can continuously rotate 360 degrees allowing us to point the camera in any direction. These servos have a top operating speed of 60 – 70 RPM, and can sustain a torque of 3.3-4.8 kg-cm. In the final stages of our design we will have to calculate if these specifications will meet our design requirements. This is the largest servo motor we were able to find at this time. It would be beneficial to use this model because it operates between 4.8 – 6.0 volts, which would be ideal for us because our microcontroller will be running at 5 volts. These servos are $13.95 each and we will need two (“Servo”).
The final operational link between the target being filmed and the camera will be a Pan/Tilt Bracket. The pan/tilt bracket consists of two brackets, and all the hardware you need to attach them to make a pan/tilt mechanism using two servo motors. The Pan/Tilt Bracket is available for $5.95 (mount).
Below all of the components of the auto-aim camera are shown in an implementation block diagram. The diagram reflects the separation of the two major components of the system by showing the transmitter and receiver on separate branches. Along each branch the diagram shows how each component would be connected to the next.
Datasheets for implementation two:
- XBee shield
- XBee
- Arduino Uno
- Arduino Pro Mini
- Feedback controller
SWOT Analysis (Best Choice - Implementation One):
The cost to build both the first and second configuration of the auto-aim camera was very similar. The first configuration would cost approximately $118 in material and the cost of the second implementation would be $127.2. Based on our initial cost estimate of $120 to build the device we chose to use implementation one.
The actual price of manufacturing will be much less than what we have specified for the prototype because we will benefit and economy of scale when we go to mass production, but because to second implementation uses a much more expensive transceiver we think that we will benefit for much greater cost reduction using implementation one.
Strengths:
-Standalone transmitter/receiver combination is much less expensive than transceiver used in second option.
-The less expensive transmitter is much less complex, so we would not have to program the hardware. It is a dedicated transmitter.
-We would be able to market the product for a very reasonable price.
Weaknesses:
-We would lose the ability to program the transmitter to suit the project
-Less expensive transmitter would not allow us to change to a different channel in multiple products were being used in one area.
Opportunities:
- We would be able to capitalize on the success of the GoPro brand name
- The lower price of the product would make it easier to find backers using nontraditional funding resources link Kickstarter.
Threats:
-Less expensive transmitter is more susceptible to noise interference.
Works Cited
"Arduino Pro Mini."Arduino Pro Mini 328. N.p., n.d. Web. 12 Apr. 2013. <
"Arduino Uno." Arduino Uno. N.p., n.d. Web. 12 Apr. 2013. <
"Ardumoto."Ardumoto.N.p., n.d. Web. 12 Apr. 2013. <
"Motor Feedback Control."2MOTOR W/ Feedback Control Add-on for Arduino Nano.N.p., n.d. Web. 12 Apr. 2013. <
"Servo."Servo.N.p., n.d. Web. 12 Apr. 2013. <
"Shield."XBee Shield. N.p., n.d. Web. 12 Apr. 2013. <
"XBEE Tutorial."XBEE Tutorial.N.p., n.d. Web. 12 Apr. 2013. <
"XBee."XBee 1mW Wire Antenna.N.p., n.d. Web. 12 Apr. 2013. <