Saturday, June 2, 2012

Week 9 Update

A solution was discovered for our problem in week 8. Kevin figured out that  in order for the combined code to work, the code that displayed the information on the oomputer had to be written directly to the micro sd in the format of "Time, Voltage."

In doing so, instead of a solid stream of light, the LED would flicker because the Arduino cann not keep the LED on and write to the Micro SD simultaneously. Instead, it just turns the LED on and off continuously.

Unfortunately at the end of the lab, the group was not able to succesfully finish the task of calculating frequency. The group will continue to try and find a way to calculate frequenyc with the reed switch until the start of week 10.

Monday, May 28, 2012

Week 8 Update

For this week's lab, we succeeded in getting the arduino to log data when a button is pushed.

To set up the breadboard for the LED/button setup, we followed this tutorial.

To indicate the data is logging, Kevin incorporated a mini, LED red light.

Afterwards the coding from Read Analog Voltage Tutorial was combined with the coding obtained from above to have the Arduino do the following steps:

1. Light the LED
2. Obtain analog signal from Potentiometer and display the information on to the computer in the format of "TIME, VOLTAGE.
3. When the button is pressed again, the LED turns off, and the Arduino stops. The millis () time function will also pause.

Afterwards, a magnet took the place of the button as the switch. This was done in the hopes that another magnet would be attached to the wheel of the solar car, and this way, speed could be measured via frequency.

Problems encountered: In trying to combine the "toggle_log_on_off" code with the micro SD writing delay, the button function stopped working. The LED would not light up, and the Arduino would not obtain the signal from the potentiometer.

Monday, May 21, 2012

Week 7 Update

I am not sure if the library provided from the site was supposed to be used, but it froze my computer so I did everything on paper instead.

Calculation of rotational frequency (revolutions/second)
-assumption: distance = 20 m
                    time = 10 s
                    wheel diameter = 4 cm = 0.04 m -> radius = 0.02
distance wheel has traveled in one full rotation = circumference of wheel
C = diameter(Pi)
C = (0.04) Pi = 0.126 m

distance of track = 20 m
To find how many full rotations a wheel must do to reach the distance:
-> 20/0.126 = 158.73 rev

So since rotational frequency is measured by revolutions/sec:

158.73 rev/10 s = 15.87 Hz

Hope this seems logical.
-May




Monday, May 14, 2012

Week 6 update

We have successfully coded a time stamp for the arduino system that can also transfer data on to a separate file like excel or notepad. However, getting this data to repeat on a memory card is still in the works. In completing this important step, we have realized two things: 1) it really helps to have a person who is familiar with the concepts of C++ to point out the obvious things and 2) our own knowledge in coding is still severely lacking even with a Maple background.

We still need to get the arduino to measure angular velocity and current. Hopefully next week will be just as productive.

Monday, May 7, 2012

Week 5 Update

Not much was done this week except for writing the code for the time stamp. Due to technical difficulties, the arduino could not write the volts and time together on the same file. Instead, it was made to write these two things into two separate files.

Update: After a week and half, a solution was discovered.

Kevin took out the code that displayed the data on the computer and had the arduino just soley write the info to the Micro SD. He tested it by adjusting the potentiometer to give 0 Volts before running the code and slowly adjusted the knob while the code was running until it reached 5 Volts.

In terms of following the proposed schedule, we are actually supposed to be attaching the finished arduino project to a solar sprint car. However due to setbacks in trying to get the arduino to do certain things, we are behind on schedule. The good (but also bad) news is that the other groups who are in charge of building the solar sprint cars are also behind, because no physical car has been built as of yet. 

Much of this time has been spent researching codes for the arduino to process. However, this is also proving to be a difficult task. 

Monday, April 30, 2012

Week 4 Update

As a continuation of last week, the millis () time function was introduced. This function tracks the seconds passed after the code is executed. We also had the arduino obtain the Voltage and display the TIME an Voltage on the computer.

Most of week four's lab has been spent researching the relationship between the voltages received by the D.C. motor and using it to find the speed of the car.

Terms to know:
  • angular velocity- the rate of change of the angular position of a rotating body
    • in the case of finding speed of the solar car, this velocity is in reference to the movement of the wheels.
  • torque-the tendency of a force to rotate an object about an axis. 
For finding the speed, the group mainly focused on trying to find the angular velocity of the wheel based on the amount of voltage received. 

According to Doswa, a site dedicated to coding and creation of new things:
1. The torque of a motor is proportional to the current flowing through it.
2. The angular velocity of a motor is proportional to the voltage across it.
 The link above provides the derivations and manipulations to produce the equation:
Further research was done and found that the Grand Valley State University Padnos School of Engineering actually conducted an experiment involving a D.C. motor to prove the above equation was not only sound mathematically but also in physical reality. Their procedure and results can be found in this link.


 

Sunday, April 22, 2012

Week 3: Update


At the beginning of lab, the group soldered on the two 6 pin headers and two 8 pin headers on to the SparksFun MicroSD shield, and attached it to the main arduino board. This can be seen in the picture below.

Testing the Sparkfun Micro SD Card Shield 
This week was dedicated to testing the Sparkfun microSD Shield. After the group managed to get the Arduino to create a "TEST.TXT" file on the microSD card, the group moved on and tried to find a way to get the Arduino read an Analog Input and store that value into a text file on the microSD card. For the purpose of this week a potentiometer was used as the analog input.
Potentiometer Connected to the Arduino Uno Board with microSD Shield.
Combining the code provided in this tutorial as well as the microSD Shield Quickstart Guide, the group managed to have the Arduino display the signal on the Serial Monitor and record that value onto the microSD card in a file called "NAME.TXT".



Although the group managed to get the Arduino to store values from the potentiometer, there are still a few kinks that needs to be worked out, such as having a timestamp to go along with the voltage values.

In accordance with the project schedule set, the group will try to establish a method of obtaining the voltages the D.C. Motor receives and also a method of using the data to find the speed of the car by next lab. 


Tasks to do before lab: 
-Further research must be done for programming the arduino system in regards to the project schedule of week 4.

Monday, April 16, 2012

Week 2: Update

Tasks that were completed in lab:

1) Downloaded the Arduino microcontroller or software to a personal computer

2) Tested software and hardware by uploading "blink example"

3) Looked for source code for reading and displaying an analog voltage on the Arduino website (www.arduino.cc)- "Anaglog Read Serial" -to measure the solar panel voltage as a function of time.

4) Loaded and tested the code


In the process of completing these tasks, the group watched the YouTube video, "Tutorial 01 for Arduino: Getting acquainted with Arduino.


The video proved to be very helpful for the group's understanding of how to handle the Arduino board and code.

-For this portion, the group had the arduino obtain a signal from the potentiometer and display it onto the computer.
 In order to do so, we had the arduino convert the signal to voltage: (Signal/1023)*5=Voltage

 The reason we multiplied by 5 is because the potentiometer was supplied a max of 5 Volts from the Arduino and for the reason for the dividing by 1023 is because the analog signal ranges from 0-1023.




Tasks to consider for next lab:

1) Look for sample code that writes information to external memory.

2) Consider how to measure a current in a range of 0 to 1 Amp.

3) Sautering the Arduino board

Monday, April 9, 2012

Week One: the beginning of the group project

Project Decision: 

For the Freshmen Design Project, the we decided to attempt to make an Arduino Data Logger system that was capable of measuring speed, voltage, and current. The three specifications listed are the minimum requirements needed to be be met by the end of the project. If we can manage to complete these three requirements, we want to do something more with the arduino system. However, we aren't sure what to add on.

Starting:
As of now we, as a group, do not have any experience in computer coding other than working with the Maple program. 

Luckily for us, the site: http://arduino.cc/ provides a vast amount of useful information. 



According to the site, an arduino system is "an open source-electronics prototyping platform, based on flexible easy-to-use hardware and software."


The picture shown above is a pre-built arduino board but it can also be custom built by hand.




Things to Consider:
-More research is desperately needed. 
-Should the group buy an Arduino Board? (one is said to be provided)