Show Posts
Pages: [1]
1  Community / Workshops and Events / A campus style Code camp program in North Carolina. on: January 30, 2014, 03:24:13 pm
There is plenty of online resources out there to learn how to programming with Arduino or Processing, or any other language for that matter. I just received news on a new camp that just started located near Asheville North Carolina. It's for passion driven learners who want to learn how to program at their own pace. It also looks like they offer coaches and mentoring. One of the mentor's on the page seems to be a software engineer from Cambridge that worked with Google?

Quote
Learn to code at Black Mountain SOLE with peers and mentors.
Any of these free (or very affordable) programs would make a solid curriculum to get you started.
Of course you can follow along with these programs from anywhere, but Black Mountain SOLE can accelerate your development through mentorship and collaboration with like-minded peers.

I thought it seemed like a great opportunity for learning this stuff. Anyone located in the Asheville/Black Mountain Area interested in this?

Here is a link http://blackmountainsole.org/learn-code/
2  Using Arduino / Sensors / Re: Using a Sony ILX751A Linear CCD with any arduino. on: April 29, 2013, 10:48:42 am
a 50% duty cycle would be the same time on as the time off. I matched the clock times on and off. thusly it has a 50% duty cycle at 1mhz.
3  Using Arduino / Sensors / Re: Using a Sony ILX751A Linear CCD with any arduino. on: April 28, 2013, 04:19:10 pm
Exam week is here and I finally had to get my butt on the ball to finish this. here are the two codes. one is arduino the other is processing. I can't test this yet because I haven't built the CCD circuit yet. Any tips or suggestions would be great!

Code:

int vout = 26; // sample this pin to get image data
int shsw = 5;  // sample hold. GND cuts on vdd2 cuts off
int clk = 6;   // clock timer pin. controls the timing.
int vdd2 = 7;  // camera needs 5volts supplied to vdd2 to function
int shut = 8;  // shutter function. for use, leave high then 1ms prior to sampling, drop voltage to ground for 1mn then back up to high.
int rog = 9; // pulse rog low once to start sequence
int sample =
0; // this will be used as a serial data output of the samples.
 
 
void setup()
{
  Serial.begin(9600); // start serial. Is baud rate correct?
  pinMode (vout,INPUT); // reads data from ccd to give us samples inbetween clock pulses
  pinMode (shsw,OUTPUT);// some of these pin's functions are optional.
  pinMode (clk,OUTPUT);
  pinMode (vdd2,OUTPUT);
  pinMode (shut,OUTPUT);
  pinMode (rog,OUTPUT);
 
   
}
void loop() 
{
  //clk initialization
    Serial.println("start"); // just for kicks
    digitalWrite(clk,HIGH);  // these next few steps starts the clk, this must be done each time prior to a 2087 cycle
    digitalWrite(rog,HIGH);
    delayMicroseconds(1);
    digitalWrite(rog,LOW);
    delayMicroseconds(1.01);
    digitalWrite(rog,HIGH);
    delayMicroseconds(1);
        for(int i = 0; i < 2087; i++ )
      {
        digitalWrite(clk,LOW); // the 2087 cycle begins here.
        delayMicroseconds(1);
        digitalWrite(clk,HIGH);
        sample = analogRead(vout); // output the ccd's data into a serial sample that can then be read by a processing programing and written to a file
        Serial.println(sample);    // ^^^^^^^^^^^
        delayMicroseconds(1);
   
      }
 
 
}

here is the processing code

Code:
import processing.serial.*;
Serial mySerial; // start a serial called mySerial
PrintWriter output; // calls the writer output
void setup()
{
  mySerial = new Serial( this, Serial.list() [0], 9600);// sets up mySerial
output = createWriter( "SampleData.txt" ); // sets output to a txt file
}

void draw()
{
  if (mySerial.available() > 0 ) //check is serial data is there
  {
    String value = mySerial.readString();
    if (value != null) // if null then something is broke. otherwise...
     {
      output.println( value );// print the serial to output which uses createWriter to place into a new txt file.
      }
    }
}
4  Using Arduino / Sensors / Re: Using a Sony ILX751A Linear CCD with any arduino. on: March 24, 2013, 02:23:21 pm
Oh great! Congrats! I haven't had much time to look at things with Mid-terms blowing things up. The exposure time was a big question mark for me. I thought it was cause I am such a noob at this. Here is another noob question.

what does the data actually look like? I have a friend working on the Gui for this project and he would like to make a csv document for our Gui to open and make a simulation of what things will look like so he can further debug. There is no information on the data sheet about what this stuff looks like. I imagine its intensity and wavelength or color.

I attempted to write code for this the other day and failed miserably. I don't know if it's because I don't know what I am doing, or if it is something simple like I started in the wrong part of the clocking sequence. I'm hunting for backup plans on this project just in case.
5  Using Arduino / Sensors / Re: Using a Sony ILX751A Linear CCD with any arduino. on: March 18, 2013, 10:31:37 am
Wow, I'm learning a lot from this one little project. Would it be easier in my case (not using a Due) to build a analog to digital converter then have the arduino read the digital data? Also, the only information I need from the camera is pixel number and Intensity of light. Is there a way to skip the unneeded data prior to the analog to digital conversion?
6  Using Arduino / Sensors / Re: interfacing a sensor on: March 16, 2013, 03:31:52 am
I'm not an expert so take my advice lightly. In your case I would write code that compares the difference between what the sensor was and what it is. set your current value to a variable and then delay some amount of time then save the value again to a different variable. Then take the two and subtract them. If the answer is not 0 it has changed. Depending on how sensitive the sensor is, you may not want to make it compare it to 0 but say if the absolute value of the difference is greater than some value. For instance start your comparison at 1,(  if firstValue - secondValue > 1 then do blah) if it is still too sensitive move that number up incrementally to adjust until you are happy with it. As far as actually writing code to read the sensor, I cant really help you. This part of the code should be relatively simple compared to actually getting the data. Hope this helps!
7  Using Arduino / Sensors / Re: Using a Sony ILX751A Linear CCD with any arduino. on: March 15, 2013, 11:17:23 pm
Ahhh. That would save my life. I am in way over my head. I just don't know where to start. Well, I kinda do. Here is a simple question. The chip runs max at 5mhz. That is 20 nanoseconds right? Does that mean my clock pulse should be something like 20 nanoseconds (with a 50% duty cycle) ? Is that what that means? I understand the timing as far as the nanoseconds between when ROG comes on and then CLK comes on and then ROG cuts off then CLK starts its timing stuffs. It is all given in the datasheet in exact nanoseconds. So to program that I'm just going to use the delay function and write stuff HIGH and LOW. But the actual clock pulse that happens after. How fast is that? Do I choose that? Does it have to be relative to the ROG pulse time? You guys are helping a lot and I really appreciate it.
8  Using Arduino / Sensors / Re: Using a Sony ILX751A Linear CCD with any arduino. on: March 14, 2013, 02:22:14 pm
Ok thanks! I should have some code put together by the end of the day and I will post it here.
9  Using Arduino / Sensors / Re: Using a Sony ILX751A Linear CCD with any arduino. on: March 14, 2013, 01:19:32 pm
Would it be possible to use an SD card shield to act as RAM? I have also considered possibly reading every other pixel ?
10  Using Arduino / Sensors / Using a Sony ILX751A Linear CCD with any arduino. on: March 13, 2013, 07:45:48 pm
Hi everyone. I have a project I have been tinkering with and it seems to be over my head. I have purchased a couple Sony ILX751A linear CCD sensors and need to gather data from them. This is for a graduate class grade and my ability to make this work effects everyone in the class's grade. We will start with the datasheet - http://www.datasheetcatalog.org/datasheet/sony/a6802498.pdf

I understand that this chip needs a main clock pulse and a ROG clock pulse. I also understand that there is a shutter option that can be implemented that will also need a pulse if I decide to use it. My concern is mainly getting the CLK and ROG clock pulses lined up correctly. I've looked at other CCD forum posts, but due to the differences in design, those posts didn't help me much. My experience with programing and Arduino is not quite at the level it should be for a project like this. Any pointing in the right direction would be greatly appreciated.

Concerning which arduino I am using, I have a nano, duemilanove, and an ethernet type arduino. This is for a class and is funded. If I need to purchase the Mega, the money is available. 
11  Using Arduino / Sensors / Re: linear CCD TCD1201d readout and timing issue on: January 10, 2013, 07:45:58 pm
Hi guys. I've been searching for the answer to this problem for months now. I have 3 TCD1201d chips that I need working. I am curious if there is any progress on this topic? If the Arduino doesn't work what will? A comment earlier says that it won't be able to be fixed without a oscilloscope. If I have a oscilloscope, what would I have to do to fix it?

I apologize if my questions seem dumb. I've never had to drive a sensor like this before. The code is a tad bit over my head. Any help would be awesome. Thanks!
Pages: [1]