lunes, 21 de julio de 2014

Carril macro con arduino IV

Estoy desarrollando las modificaciones al stacking rail que comentaba hace unos dias.
Descargue la sdk de canon y estoy siguiendo este tutorial para implementarlo. La idea es crear un programa en C# (Visual Studio 2012) que use el SDK de Canon y la libreria de vision artificial OpenCV  (aqui como implementar a VS2012)  para el control de la camara y el carril. en el futuro el carril tendra varios ejes en la bandeja de la muestra, he visto que se tarda mucho tiempo en preparar la posicion de algo tan pequeño. Tambien quiero incluir la iluminacion al aparato, pero no tengo mas pines libres, dejo solo el encendido y apagado de la iluminacion a 12V. De esto y de mover el carril se encargara arduino, enviando y recibiendo datos del y al programa.
La idea es ver a pantalla completa la imagen de la camara en LiveMode y los controles de pc, camara y carril a modo de marco o lateral o algo asi, teniendo asi todos los controles del proceso a mano.
Pense que disponia de una camara canon DLSR modelo 400D ( mi primera reflex ) para pruebas, pero despues de mucho sin uso esta muerta .. asi que para las pruebas uso la camara con la que trabajo ... mi amada canon 7D, mientras sea asi no voy a enredar mucho con la sdk y me voy a limitar a modificar el programa de ejemplo del tutorial que sigo, dejo un screensave de lo que llevo, poco mas que maximizar y eliminar los marcos, botones y demas, me faltan los controles de los 3 ejes de la muestra.












Creo que lo mas rapido es hacer un shield para arduino en vez de desarrollar una placa completa, la razon, no quiero soldar SMD, no se y tardaria, y el chip conversor FTDI lo es, usare alguno de los arduino originales que tengo por casa.
El shield controla 4 motores paso a paso bipolares (ULN2004), uno mueve la camara y los otros tres mueven la muestra en 3 ejes. Un 2n222 enciende o apaga la iluminacion y dos finales de carril limitan el movimiento del eje de la camara.

Dejo los archivos en Eagle del shield, aqui el brd y aqui el sch, aqui el pdf en A4.
Aqui el codigo arduino y aqui el codigo C# para VisualStudio2012. ( en cuanto los termine los subo )


domingo, 6 de julio de 2014

Laser trigger con arduino

Me surgio la necesidad de una barrera que disparara la camara para tomar unas fotos. Las fotos aun no estan hechas, pero la barrera si.

Dejo codigo y pcb

NOTA: para la realizacion de este proyecto estoy usando unas muestras de ATMEL. En particular el ATME328-pu. Al programarlo me dice que no reconoce el chip y da error. Hay un archivo llamado `avrdude.conf` en uno de los subdirectorios del directorio arduino, la solucion es buscar la linea  " signature       = 0x1e 0x95 0x0F; " car y cambiar el 0F por 14, salvar y reiniciar arduino.

Esta seria la segunda version, hace unos dias
Aqui la calculadora de resistencias  para el LM317 que uso para los 3v del laser.

miércoles, 2 de julio de 2014

Carril macro con arduino III


De compra semanal me he cruzado con un controlador clonico de ps2 y creo que sera mejor para el control del carril pero al tenerlo en la mano me he dado cuenta de las posibilidades, por esto creo que finalizare la version 1 del carril cuando implemente las siguientes mejoras.

  • encendido de la iluminacion por mando 
  • posicionado por mando de la camara, y los otros 3 ejes para la muestra  ( arriba / abajo, izquierda/derecha, delante/detras y giro horizontal)
Al tener el mando he visto que seria genial poder controlar la camara totalmente y visualizar los datos del carril junto a la imagen tomada en liveview, y los parametros de la camara en la misma pantalla y todo controlado por el mando de playstation que al terminar me lo mande al helicon focus, ouh yeah! me ahorraria mucho tiempo en el preparado de cada foto, facilitandome tomar fotos que de otra manera no podria, asi que creo mudare el cerebro a un programa en C# para windows y dejare el arduino para el control de motores sensores y demas. Aqui mas info.


El cableado seria el siguiente:


La libreria aqui
Mas informacion aqui

y mas tomas con el hardware y software actuales: