Tuesday, September 30, 2008

Lab report for 09.22.2008 & 09.26.2008

On September 22 (Monday night), the N.M.E. design group met to continue working on the ADC problem that occurred from Sunday’s lab testing. The ADC wasn’t giving us the right reference voltages. We observed the voltages coming from channels 0 & 1 of the MCP 3208. The problem was solved. We assumed it was the wiring of the ADC to the Prop. Chip. We then rewired the circuit. The wire from the MCP 3208 that went to the VDD pin was changed to 5 Volts. The Ref & VDD are the same now. Near the end of lab testing we encountered complications that involved using our conversion factor equation to display our Temperature correctly from the ADC. The spin language didn’t like displaying Decimals onto the VGA, so we decided to change our decimal value to a fraction and it resulted in displaying the correct room temperature. Before ending the night, we added a running timer (we used a counter) and temperature display to the propeller program (.spin).

On September 26, the N.M.E design group met to work on the project. Our main concern was (1) to replace the bent driveshaft and verify there were no additional internal damage to the car, (2) to configure the Analog to Digital (A2D) converter to output temperature readings in decimal values and (3) to write a code for the Parallax Datalogger so that it effectively records data outputs from the A2D. We encountered datalogger problems. We switched the modes on the datalogger from SPI to UART mode. Logged onto the Parallax website and downloaded Paul’s USB object from the Propeller Object Exchange. We had a problem displaying the values in the txt. File coming from the datalogger. The problem was the program didn't like displaying the integer values directly on the screen (ex. vga.dec(Temp)), it would only like to display strings. We did a trial and error process by coding into the program to record data into our logger every second. We noticed that it would display our string characters into a .txt file onto the USB, but would reject our integer values. Trying to display the integer values directly, would display several ASCII characters (ex !@#$%^&). We did this process several times to pinpoint why the program wasn't doing exactly what we were telling it to do. We knew that it would record our string characters in the .txt, so we wanted to try to figure out a way to convert our integer values to a string. So we solved the problem by calling the NumToString PUB from Paul's USB Object Library. As soon as we did that, the problem was solved.


[1] The picture below is of the new driveshaft for the R/C car




[2] Picture below shows comparison of the new drive shaft (top) and the previous drive shaft (bottom). Note: the new driveshaft is thicker than previous drive shaft.





[3] Picture below shows our TV/VGA output of the current temperature and time counter within the code (.spin) of our program.




[4] Picture below shows proof that the running timer & temp. display are active and the timer is incrementing per 1 second.








Justin Rosario
N.M.E Design Team

Monday, September 29, 2008

Lab Report 9.28.2008 "Thermocouple Circuit"

On September 28, 2008 the N.M.E design team met to resume the next phase of the project. Our primary objective was to build a circuit for the Omega Nickel Chromium K Type Thermocouple. To construct this circuit we bought necessary components from Radio Shack along with the LTC1050 Precision Zero-Drift Operational amplifier and LTC1025 Thermocouple Cold Junction Compensator (fig. 1).

We were able to build the circuit, but unfortunately not as desired. Apparently we were missing two essential components, a bread board and a (1) 100Ω (ohm) potentiometer. We tried to contact many of the surrounding electronics stores, but had little success. Our next option was to improvise and use basic electronic techniques to construct a partial potentiometer.

Fig. 1
Components

Our solution was to take (2) 100Ω (ohm) resistors, set them parallel to each other and obtain a 50 Ω (ohm) resistance. We also had (5) 150 Ω (ohm) resistors and followed the same procedure in order to obtain a 75 Ω (ohm) resistance. And finally we set a (1) 100K Ω (ohm), (1) 20K Ω (ohm), (1) 4K Ω (ohm) and a (1) 2.2K Ω (ohm) resistor in series to obtain a 127K Ω(ohm) resistance. After soldering all the components to the board we began testing (fig. 2). The resistance at expected intervals were correct as well as the reference and input voltages. Unfortunately the desired output from the thermocouple was not obtained. We will purchase the necessary components prior to the next meeting and will try to solve this problem.

Fig.2
Board Prototype

Jorge E. Fontanez
N.M.E. Design Team

Friday, September 26, 2008

Data Logger Test Code

CON
_clkmode= XTAL1 + PLL16X
_xinfreq= 5_000_000
'*********** Runnning at 80MHZ *************
'

OBJ
logg: "Paul_USBdrive" 'Datalogger Object
text: "TV_Text"
delay: "delays"

Var
byte buffer [6]
byte s
PUB main
text.start(12)
logg.start(0,1)
delay.delaySec(1)
if logg.checkErrorCode==0
logg.OpenForWrite(string("text.txt"))
logg.WriteLine(string("ABCDE"))
logg.Close(string("text.txt"))


This code is the working version of our datalogger test. We started programming using the object DataLoggerSPI.spin, this object used SPI interface to communicated between the Prop board and the datalogger. We tried to get the datalogger to initilize using SPI it would not initilize. We found an object in the object exchange that works with the datalogger in UART. After a rewire of the breadboard to utilize UART we modified the code in the DataTest_UART file, the test program now writes a .TXT file to the flash drive and stores ABCDE in that text file.

Wednesday, September 24, 2008

pdf. links to parts & accessories

Memory Stick Datalogger - http://www.parallax.com/Portals/0/Downloads/docs/prod/comm/MemoryStickDataloggerV1.1.pdf

Parallax (Futaba) Standard Servo - http://www.parallax.com/Portals/0/Downloads/docs/prod/motors/stdservo.pdf

Parallax Propeller Demo Board
- http://www.parallax.com/Portals/0/Downloads/docs/prod/prop/PropDemoDschem.pdf

Propeller Manual - http://www.parallax.com/Portals/0/Downloads/docs/prod/prop/WebPM-v1.01.pdf

Mouser MCP3208 12-bit ADC
- http://ww1.microchip.com/downloads/en/DeviceDoc/21298c.pdf

Omega Nickel Chromium K Type Thermocouple
- http://www.omega.com/temperature/z/pdf/z204-206.pdf


Justin Rosario
N.M.E Design Team

Engineering Specifications

Parallax Propeller Microcontroller Specifications
Package Types 44-pin LQFP
Model # P8X32A
Parallax Part # "P8X32A-Q44 - QFP package
"
Power Requirements 3.3 volts DC
External Clock Speed "DC to 80 MHz
(4 MHz to 8 MHz with Clock PLL running)"
Internal RC Oscillator 12 MHz or 20 KHz
System Clock Speed DC to 80 MHz
Global RAM/ROM 64 K bytes; 32K RAM / 32 K ROM
Processor RAM 2 K bytes each
RAM/ROM Organization 32 bits (4 bytes or 1 long)
I/O Pins 32
Current Source / Sink per I/O 40 mA

Parallax LM34 Temperature Sensor
Features: Linear +10.0mV/°F scale factor
Better than 1.0°F accuracy
Calibrated directly in degrees Fahrenheit
Less than 90uA current drain
Parallax (Futaba) Standard Servo
Power 6vdc max
Speed 0 deg. to 180 deg. in 1.5 sec. on avg.
Weight 45.0 grams/1.59oz
Torque 3.40 kg-cm/47oz-in
Size mm (L x W x H) 40.5x20.0x38.0

Mouser Electronics MCP3208 12-bit ADC
Manufacturer Microchip
Product Category ADC (A/D Converters)
# of Converters 1
Package / Case SOIC-16
Conversion Rate 100 KSPS
Resolution 12 bits
SNR 100 dB
Type 2.7V 4-Channel/8-Channel 12-Bit A/D Converters
Operating Supply Voltage 2.7 V to 5.5 V
Parallax Memory Stick Datalogger
Features: Simple Serial or SPI interface to Microcontroller
Extended or Short Form Command Set/Responses
5V supply with 3.3V/5V safe I/O
Easy firmware update (can be field-updated)

LTC 1050 Precision Zero-Drift Operational Amplifier w/Internal Capacitors
Total Supply Voltage 18V
Input Voltage (V+ + 0.3V) to (V- - 0.3V)
Output Short-Circuit Duration Indefinite
Storage Temperature Range -65 C to 150°C
Lead Temperature 300°C
Minimum Voltage Gain 130dB
Single Supply Current 1 mA
Single Supply Operation 4.75V to 16V

Omega Nickel Chromium K Type Thermocouple
Thermocouple Grade -328 to 2282°F
-200 to 1250°C
Extension Grade 32 to 392°F
0 to 200°C
Standard "2.2°C or 0.75% Above 0°C
2.2°C or 2.0% Below 0°C"


Justin Rosario
N.M.E Design Team

Copy of the Senior Design Project Proposal

Problem/Opportunity: Provide the outdoor nitro powered RC(Radio Controlled) car enthusiast a better experience and greater rate of success by increasing the efficiency of the engine by means of integrating a temperature control system to automatically adjust the carburetor on the cars engine.



Goal:
Integrate an engine temperature control/carburetor adjustment to a nitro powered RC vehicle.

Objectives: We would like to propose a marketable product that will increase the performance of nitro powered RC cars. The engine temperature control/ carburetor adjustment will be composed of a parallax microcontroller that will work in conjunction with an RC servo and thermocouples. As a whole the system will be able to automatically correct the engine’s optimum performance by adjusting the fuel mixture through the temperature sensor output measurement: Thereby increasing the performance of the engine and the experience of the hobbyist.



Success Criteria:
To be considered successful, this project should provide us with a high degree of difficulty that will demand the use of knowledge acquired from our studies at UCF. It will also be a success if the project produces a marketable product that satisfies the current needs of the RC industry.



Assumptions, Risks, Obstacles:
Like in many projects, there are issues that must be considered. We must not assume that a project will be completed without first acknowledging the possible risks and obstacles that could be faced.
 A risk we are willing to take by accepting this challenge, is the possibility of failing to comply with the needs of the intended market.  Another possible risk is not being able to complete the project by it’s intended due date and also the possibilities of missing a patent to unknown competitors.
However our most notable obstacle is ‘Time’. We hope to progress steadily to have enough time to design, test and create a quality product.


Senior Design Project Proposal

Request for Approval

Bernie Rosario, Chris Mountain, & Jorge Fontanez

September 12, 2008

Introduction:

We are asking to design a temperature controlled automated carburetor control for a nitro powered radio controlled (RC) vehicle. The purpose of this device is to offer RC enthusiasts greater reliability, power, and ease of use out of their nitro vehicle. Our product will be based on the demands of the RC industry, such demands include, light weight, low power consumption, and rugged durability all within a very small package. Our design team will be mentored by our faculty advisor, Dr. Ducharme who is an expert in the field of electronics and a nitro RC hobbyist as well.

Background:

A nitro RC is powered by a miniature two stroke engine generally ranging in displacement from 2cc to 9cc. These engines use a mixture nitro-methane, methanol, and oil, this fuel is commonly referred to as “nitro”. The two-stroke engine design allows for large amount of power to be made compared to a 4-stroke engine of the same size. A RC nitro engine will generally give between 1 and 3 horsepower and reach speeds past 40,000 rpm. The relatively small size compared to horsepower makes these engines ideal for RC vehicle power plants.

To make these engines run at peak performance proper adjustment of the engine’s carburetors is needed. The carburetor’s main function is to meter the amount of fuel going into an engine relative to the amount of air that is also entering the engine. In a nitro RC vehicle, adjustable needle valves are used to meter how much fuel is used at idle/low engine speed, and high engine speed. Generally when the idle/low speed of carburetors are set they can be left unadjusted for the rest of the day, whereas the high speed carburetor needs to be adjusted depending on many variables throughout the day. An engine makes its peak torque while running at an air to fuel ratio just below the stoichiometric mixture or the ratio of air to fuel that combines all fuel with the available oxygen within a combustion chamber. A carburetor can be adjusted to add more or less fuel at a given point; this is called leaning, or richening the air/fuel mixture. When a mixture is lean, this means that there is more air than fuel compared to the nitro fuel's stoichiometric mixture, when a mixture is rich, this means there is more fuel than air compared to the nitro fuel's stoichiometric mixture. An air fuel mixture that is too rich will cause the vehicle to bog and lack power and acceleration. An air fuel mixture that is too lean will cause the engine to run hot, causing reduced oiling, and may reduce the life of the engine.

RC vehicle enthusiasts use many tools to optimize their carburetor to provide a high level of performance. The current standard is to take a measure of the cylinder head temperature while the vehicle is stopped after the motor has been warmed up. Hobbyists then adjust their high speed carburetor leaner or richer, depending on how hot the motor is running. If the motor is running too hot (over 220F), a richer mixture will cool the motor down, if the motor is too cool (under 200F) leaning the carb. will increase the head temperature. This method of adjustment is not reliable for a number of reasons, ambient temperature, relative humidity, and barometric pressure can change from run to run. Also, when checking an engines temperature the vehicle must be stopped, this allows the engine to cool significantly between runs. These problems make it difficult to properly fine tune an engines carburetor to its peak performance.

Project Timeline:

Task Descriptions:

Research:

A detailed and extensive research on the project topic should be completed for the beginning phases of the senior design project. During the research phase a list of references, specifications of equipment, and a review of current literature should be included. Our main focus will be on the Parallax propeller chip, operation of the R/C Nitro/ 2-stroke Engines, servos, and temperature sensors.

Project Proposal:

Prepare a thorough proposal of the selected senior design project. The proposal should include the scope of the project (ex: problem/opportunity, goals, objectives, etc.), a timeline, specifications, review of current literature, and list of references.

Order Parts & Accessories:

Order and purchase the necessary parts or accessories needed for the senior design project to be created. Some of the necessary equipments that will be needed are: Parallax Propeller Demo Board, R/C Nitro 2-Stroke Engine, temperature sensors, Analog-to-Digital Converter, and any required parts that are needed for the project to function correctly.

Project Design & Construction:

Create a flowchart or blueprint to be used as a step-by-step manual for the assembly of the project design. Brainstorm and map out several different prototypes before the final project design is chosen. Once the final design is chosen begin construction/assembly of the project.

Lab Testing & Troubleshooting:

All test runs, data recordings, and test analyzing should be performed in this phase of the project. Any percentage errors, miscalculations, and malfunctions of the project should be corrected for the finalization of the project.

Finalize Product:

In this phase, any final modifications and adjustments should be made on the design product to be presentable ready for the Project Oral Presentation

Written Report:

A complete and detailed project report should be written according to the format and guidelines specified in the Senior Design Project syllabus.

Prepare Project Oral Presentation:

All materials and documents should be ready to present for the day of the Project Oral Presentation (ex. PowerPoint presentations and videos). The final product should be complete and be ready for display. Rehearsal of the full presentation should be demonstrated with the group for better preparation.

Project Oral Presentation:

An oral presentation will be presented openly to the public. Business attire is mandatory during the oral presentation. The time limit for formal talk is 15 minutes. Questions and demonstration is limited to 10 minutes.

Engineering Specification:

Parallax Propeller Demo Board

This microcontroller is jam-packed with various capabilities and applications that are compacted into a circuit board. This amazing microcontroller comes with several features such as a VGA & TV output, USB-to-serial interface, mouse & keyboard inputs, Stereo output, microphone input, a breadboard to practice designing your own custom circuits , eight available I/O pins, and many more. Required additional equipment is provided below in the chart.

Review of Current Literature

[1] Carburetor 101, by Eric Perez provides a good explanation of the carburetor used in a 2 cycle (stroke) RC engine. He provides a step by step instructional document, on how the reader can optimize the performance of the carburetor.

The author provides many clear and easy to understand diagrams such as an engine tear down, a detailed carburetor, and a two needle carburetor assembly drawing.

[2] The article by Digital Nemesis titled How R.C. Servo Motors Work focuses on the functionality of the R.C. Servo.

The author breaks the article into many sections. Some sections explain the components that make up the servo and the rest of the sections are dedicated to the controlling of the servo via Microcontrollers.

A block diagram is included within the article to provide a visual of the circuitry that composes an R.C. Servo.

[3] Thermocouples is a document fully dedicated to this electrical temperature reading component. The article mainly explains how a thermocouple operates, defines its color codes, and describes recommended use limits and thermocouple standards.

Although the article did not provide any diagrams, graphs or flow charts; it did include a vast amount of links and references to navigate and learn more about the subject.

[4] In Measure High, Measure Low by Jon Williams, who describes himself as a temperature enthusiast, provides a concise history regarding the origin of thermocouple.

Williams also directs his audience attention to the DS2760, a chip that its central function is to monitor lithium-ion batteries, but can be used effectively as a thermocouple.

The rest of the article is dedicated to the interfacing of the DS2760. Throughout this portion Williams provides many useful elements, such as printed screens and schematics to further increase the knowledge of his audience.

List of References

[1] James Cox, Fundamentals of Linear Electronics: Integrated and Discrete, 2nd ed.

Albany, NY: Delmar, 2002.

[2] James A. Gray and Richard W. Barrow, Small Gas Engines, 2nd ed. Englewood Cliffs,

New Jersey: Prentice-Hall, 1988.

[3] John B. Heywood and Eran Sher, The Two-Stroke Engine: its development, operation,

and design. Philadelphia, PA: Taylor and Francis, 1999.

[4] Jeff Martin, Propeller Manual. Rocklin, California: Parallax Inc, 2006.

[5] Norman S. Nise, Control Systems Engineering, 5th ed. Hoboken, New Jersey:

Prentice-Hall, 2004.


Justin Rosario
N.M.E Design Team

Shipments Received

Jorge F. - 09/17/08 - Received shipment for LM34 Temp. Probe, Memory Stick Datalogger, and Parallax (Futaba) Standard Servo

Chris M.-09/17/08 -Received shipment for Exhaust Gas Temp. Thermocouple Probe Kit, LT1025, LTC 1050, MCP 3208 BI/P

Justin R.- 09/19/08- Propeller Demo Board




Justin Rosario
N.M.E Design Team

Parts & Accessories Current Budget Cost

For more detailed information refer to the xls. & doc. on Google Groups labeled Senior Design Current Budget Costs.

Justin - Propeller Demo Board = $104.18
Infrared Therm. = $6.73
Graves R/C Hobbies = $130.27
Ind. Total = $241.18

Jorge - LM34 Temp. Probe, Mem. Stick DataLog, Futaba Stand. Servo = $77.73
Infrared Therm. =$6.73
Graves R/C Hobbies =$90.82
Radioshack 40PK Alkaline AA, Radioshack 9V 800MA Adapter =$41.52
Ind. Total =$216.80

Chris - E.G.T. Thermcouple Probe Kit = $37.99
LT1025, LTC1050, MCP3208 = $52.80
Infrared Therm. = $6.73
Graves R/C Hobbies=$130.27
LTC1050ACN8-ND x 2=$23.48
Ind. Total = $251.27



TEAM TOTAL as of 09/24/2008: $709.25


Price on working with a excellent team for a great senior design project : PRICELESS


Justin Rosario
N.M.E Design Team

Tuesday, September 23, 2008

Test Outcome: September 21, 2008

On September 21, 2008 the N.M.E team gathered to conduct preliminary tests. We began with a test run on an average size parking lot that contained few obstacles. After bumping the vehicle three times and bending the drive-shaft (fig. 1), we agreed that a cleaner and more spacious area
was needed to successfully conduct future tests.
Fig. 1 Bent Drive Shaft
We also began the assembly of the Analog to Digital converter (MCP3208) along with the Parallax LM34 Temperature Sensor and Parallax Memory Stick Data logger onto the Parallax Propeller Micro controller Board (fig. 2). After completing the assembly we decided that it would be best to isolate the Data logger in order to configure the Analog to Digital converter, in order to obtain readings from the Temperature Sensor.

Fig. 2 Board Assembly

However, we experienced some difficulty in the first programming attempt. We were able to successfully output ‘text’ from the micro controller TV_output port, but we were not able to obtain the temperature readings we desired in binary (fig. 3). As of 9.22.08 we have resolved this issue.


Fig. 3 Programming Error

As previously stated we are working with Team Associated TC3+ car model. This car was chosen for its sturdy features and the amount of space it provides to mount our project board. Below detailed pictures are provided to demonstrate target areas:


Fig. 4 TC3+ Top View


Fig. 5
Carburetor Close-up


Fig. 6
Future Mount Area


Jorge E. Fontanez
N.M.E Design Team


Code

Here is the first bit of code for the Testing stage of the project. The program will get temps, and time and then display it and log it. This is revision 3. Revision 4 will include datalogger code. 

OBJ
delay: "delays"                 'Delay Object
text : "tv_text"                'TV Object
logger: "DataloggerSPI"         'Datalogger Object
A2D : "MCP3208"                 'A to D Object
VAR
word CHT 'Cylinder Head Temp
long EGT 'Exhaust Gas Temp
long counter
word gnd
long Temp
long T2

Pub main
  init   'Init Devices
  counter :=0
  repeat
      text.str(string($0D,$0D,"Temperature is: ")) 
      CHT := A2D.in(0)
      gnd :=A2D.in(1)
      Temp:= ((CHT - gnd)/(1024/125))  'Take CHT - floating gnd / A2D constant = temp
      text.dec(Temp)
      text.str(string($0D,$0D,"Time running is: "))
      counter++
      text.dec(counter)
  
     
    delay.DelaySec(1)
    text.out($00)   
  
                                                                   
  
 
PUB init
  'Init our devices
   text.start(12) 'init TV out
   A2D.start(5,4,6,%1111111)       'DI/DO,CLK,CS,PINS
  'logger.DataloggerSPI (0,1,2,3)

Chris Mountain
N.M.E. Design Team 

Sunday, September 21, 2008

Carburetor Assembly

The objective of our project is to control the engine temperature by automatically calibrating the Main needle valve of the Nitro powered RC car. To complement previous posts the following pictures are provided to effectively illustrate central engine components.


Fig. 1 Carburetor Assembly

Fig. 2 Carburetor Assembly Section View.

(1) Main Needle (2) Low Speed Needle (3) Adjustable Fuel inlet

Fig. 3 Manual Needle Adjustment

By adjusting the Needle clockwise the RC car will run lean; however if the needle is rotated counter-clockwise the car will run rich.


Pictures retrieved from Radio Control Nitro Basics

Jorge Fontanez
N.M.E. Design Team


Tuesday, September 16, 2008

Parts & Accessories Current Budget Cost

For more detailed information refer to the xls. & doc. on Google Groups labeled Senior Design Current Budget Costs.

Justin - Propeller Demo Board = $104.18
Infrared Therm. = $6.73
Ind. Total = $110.91

Jorge - LM34 Temp. Probe, Mem. Stick DataLog, Futaba Stand. Servo = $77.73
Infrared Therm. =$6.73
Ind. Total =$84.46

Chris - E.G.T. Thermcouple Probe Kit = $37.99
LT1025, LTC1050, MCP3208 = $52.80
Infrared Therm. = $6.73
Ind. Total = $97.52



TEAM TOTAL as of 09/17/2008: $292.89


Price on working with a excellent team for a great senior design project : PRICELESS


Justin Rosario
N.M.E Design Team

Monday, September 15, 2008

Controlling Heat

I was thinking today about gathering data for our N.M.E. project. In order to accurately control our Hi-Speed Needle valve we need to data log temperature to know when the motor is effectively warmed up to start correction, when the head is too hot, too cold, and the exhaust is too hot or too cold. All of these temperatures will remain fairly relative from motor to motor. A learning algorithm would have to be used to implement our controller in many different engines and vehicles. Perhaps a difference function could be used, based off of the gap between head and exhaust temps. For our experiments we will be data logging the temperatures during deliberately rich and lean conditions, also logging our best efforts to properly tune the carburetor. In a controlled environment we will need to simulate race conditions, which would be 4 to 5 minutes at at least 85% of that time at full throttle. We will also need to learn the minimal amount of movement our servo can produce that will also change our air/fuel ratio.


In theory the best performance should happen at High EGT and High Head temps, this would mean that the Air/Fuel is near stoich. This should give us efficiency, but it is important to keep the cylinder head temps under control. It is important to note that 2 cycle engines use fuel mixed with oil to lubricate the engines. This means that as 2 stroke engine goes lean it also is low on oil, which causes premature wear on the bearings within the motor.


Tuning Tactics

LOW EGT

HIGH EGT

HIGH CHT

Too Lean

OK

LOW CHT

Too Rich

N/A



Chris Mountain
N.M.E. Design Team