Interact Arduino Hardware with C# Program

OK Team, I have a good one for you - I'm new here so be nice (or not).

I have developed an image processing program using C#.NET, and I want to interact with a Camera connected to an Arduino Board, the resulting image would then be passed to the c# program on board a SD Card attached to the Arduino, and then output sent to the SD card from my C# program, in the form of text.
My main question would be how to interact with Arduino and my C# program.

Where do I start, I have not found anything on the Web that would help yet.

Any ideas or solutions gladly accepted.

Cheers

James

  1. The arduino and C# communicate through the serial port.
  2. The arduino is no good at passing on video, it is not fast enough and does not have enough memory.
  3. You can not write to an SD card at video rates with an Arduino.
  4. It takes about 15 seconds to transfer a single still image from a Jpeg serial camera out of the serial port.

Cheer Grumpy Mike for the post

I will not be using Video, just still images, so that's not the problem.
But passing a still image from the camera to the SD is possible ?
So is there is no way of embedding the C# program on the SD card and then, whenever a new image appears on the card to run the program, without interaction from a computer ?

Cheers

jamesinger:
I will not be using Video, just still images, so that's not the problem.
But passing a still image from the camera to the SD is possible ?
So is there is no way of embedding the C# program on the SD card and then, whenever a new image appears on the card to run the program, without interaction from a computer ?

For all practical purposes an Arduino can't process images.
You could perhaps use the Arduino to control the camera - rotate it or push the button to take a picture and have a separate direct connection from the camera to the PC - or just store the images internally in the camera.

There is certainly no way to embed a C# program on an Arduino SD card and have the program run from there. Arduinos can't run C# - that is technology for a PC with huge amounts of memory and processing power.

...R

Cheers mate for that, I'm new to this so all is good info.

OK, so if i cannot embed a c# program into the Arduino, what would be the best way to transmit the image to a server when not connected physically to a computer.
The only premise I have is that distance not be an issue.
Is it possible to transfer over radio frequency ?, don't want to do wireless as that has distance issues.
If I can over radio frequency, what hardware would I need.
The Arduino would be connected to a drone, so transferring an image mid flight is the desired ability.

Cheers - James

jamesinger:
OK, so if i cannot embed a c# program into the Arduino, what would be the best way to transmit the image to a server when not connected physically to a computer.

I said 2 things earlier ( A ) you can’t embed C# and ( B ) an Arduino can’t do images. You seem to have missed ( B ).

That means your question about wirelessly transmitting images has nothing to do with an Arduino.

Maybe a RaspberryPI could do it.

…R

yes correct, i would need an attachment to send the data from the camera over radio frequency to a host server acting as the receiver.
I guess i am asking how to do that.

Is it possible to transfer over radio frequency ?, don't want to do wireless as that has distance issues.

What distinction do you make between wireless and radio frequency? To my mind they are both the same.

jamesinger:
i would need an attachment to send the data from the camera over radio frequency to a host server acting as the receiver.
I guess i am asking how to do that.

What sort of speed do you want to do it at? Basically transfer speed is limited on an Arduino. Your best bet is:-

Maybe a RaspberryPI could do it.

I guess i am asking how to do that.

Buy a damned camera that has that capability built in. Google WiFi cameras.

OK, thanks for all the input everyone.
So it seems to me that my best option would be to use a Rasberry Pi with an OS on it, with my c# CLI interacting with the arduino.

Any tips or sites that would aid me in transfering an image from a camera to the Rasberry Pi ?

Cheers - James

Any tips or sites that would aid me in transfering an image from a camera to the Rasberry Pi

It depends on what sort of camera. You can plug a web cam straight in. Even cheaper is the Raspberry Pi's own HD camera.

http://www.raspberrypi.org/learning/python-picamera-setup/

http://heywhatsthebigidea.net/projects/pi-vision-a-raspberry-pi-camera-controller/

You read individual pixels and send them down the serial port or over Ethernet.

OK great, thats what i am hoping for. Sounds slike a plan

And In turn the transfered image can be accesed from with the Linux OS on the Pi ?, with my c# CLI or maybe Form Based App

jamesinger:
And In turn the transfered image can be accesed from with the Linux OS on the Pi ?

Yes or any language running under it.

james, for reference, which camera were you wanting to interface to the Arduino?

You may be past this point in the discussion by now, but you can interface your arduino to a PC using the serial port object in C#. It's been several years since I tried doing that, but there were some online examples for writing serial routines using C#.

any camera really that works with the arduino.

The whole idea is to run the hardware without computer interaction.
For example

Take an image any given interval, pass that image to the c# program, (seems I would have to use the RasPi as need OS to run C# program), then transmit using transmitter to a receiver to action if c# software triggers alert.

Just trying to iron out all the how to's, and figure out what i need to make it work

If you still want to try making a C# terminal to connect to the Arduino [exclusive of camera], there are a bunch available. The one I had tried seems to no longer be online.

http://www.google.com/custom?q=c%23+terminal&sa=Google+Search&sitesearch=