NiCo_P
Usuario (Argentina)

Hola a todos, aca les dejo un pequeño tutorial de como realizar con arduino un regulador de velocidad sencillo para motores de corriente continua. Los componentes que utilice son: 4 leds 4 resistencias de 220ohm 1 recistencia de 1 K 1 transistor TIP122 1 diodo 1N4001 1 condensador de 1 micro faradio 1 potenciometro de 10 K 1 motor de 12v 1 fuente de 12v el circuito es el siguiente: aca les dejo un pequeño video: link: https://www.youtube.com/watch?v=TWsv4W8rlIM y por ultimo aca esta el codigo del arduino: int led1=6; int led2=9; int led3=10; int led4=11; int pote=5; int motor=3; void setup(){ pinMode(led1,OUTPUT); pinMode(led2,OUTPUT); pinMode(led3,OUTPUT); pinMode(led4,OUTPUT); pinMode(pote,INPUT); } void loop(){ int value = analogRead(pote); analogWrite(motor,value/4); if(value<254){ analogWrite(led1,value); analogWrite(led2,0); analogWrite(led3,0); analogWrite(led4,0); } if(value>254 and value<511){ analogWrite(led2,254); analogWrite(led3,0); analogWrite(led4,0); } if(value>511 and value<765){ analogWrite(led3,254); analogWrite(led4,0); } if(value>765){ analogWrite(led4,254); } }
Hola a todos, aca les dejo un tutorial de como realizar un puente H con el integrado l298 Para los que no sepan lo que hace un puente H, se los explico muy basicamente: es un circuito electronico que nos permite controlar el giro de un motor de corriente continua, me refiero a que el motor gire en el sentido de las agujas de un roloj o en el sentido contrario a las mismas. En internet los venden ya armados: Pero lo podes armar en tu casa por mucho menos dinero, asi me quedo el mio: No sera lo mismo esteticamente pero funciona de la misma manera que el comprado. ARMADO ACLARACION: al circuito le agregue le agregue un 7805 para regular la tension de la bateria y poder conectar directamente el arduino Componentes: 1 L298N (circuito integrado puente H) 1 LM7805 8 Diodos 1n4148 2 Capacitor de 2200uf 1 Capacitor de 0.33uf 1 Capacitor de 0.01uf 2 Disipadores 1 plaqueta virgen de 9cm x 6cm (o de 10x10 cm para no complicarse) 4 borneras de dos contactos 6 espadines/pines El L298 nos permite controlar dos motores en el mismo integradro y regularles la velocidad a nuestro gusto. Con un arduino solo nececitaremos tres pines para controlar el motor: 1ro en high mueve el motor en una direccion 2do en high mueve el motor en la direccion contraria 3ro nos permitira controlar la velocidad, con PWM hoja de datos l298 http://www.alldatasheet.com/datasheet-pdf/pdf/22437/STMICROELECTRONICS/L298.html Diagrama El circuito impreso lo diseñe en PCBWizard de aca lo podes bajar el progrma http://www.taringa.net/comunidades/comunidad-cep/5696565/Livewire-PCB-wizard-y-manual-en-espanol.html y aca te dejo los archivos del diagrama y el pcb https://sourceforge.net/projects/puenteh/files/ el pcb es distinto al de las fotos porque le deje mas espacio para los disipadores imagen del artwork, esto es lo que se imprime. AVISO: imprimirlo siempre desde el PCBWizard no imprimir esta imagen ya con el PCB armado solo tenes que imprimir el artwork en papel fotografico y plancharlo en una placa virgen para luego sumergirlo en cloruro ferrico. si no sabes como se hace esto busca en taringa que esta lleno de post: http://www.taringa.net/posts/hazlo-tu-mismo/11280314/Circuitos-impresos-parte-I-y-II.html http://www.taringa.net/posts/hazlo-tu-mismo/17542295/Como-hacer-circuitos-impresos-Tecnica-de-la-plancha.html Despues a agujerear y por ultimo soldar los componentes PRUEBA para probarlo lo conecte al arduino de la siguiente manera y cree un programita de prueba medio loco que va variando el giro y la velocidad int md_adelante = 5; //md = motor derecho int md_atras = 4; int md_velocidad = 3; int mi_adelante = 11; //md = motor izquierdo int mi_atras = 10; int mi_velocidad = 9; void setup() { pinMode(md_adelante,OUTPUT); pinMode(mi_adelante,OUTPUT); pinMode(md_atras,OUTPUT); pinMode(mi_atras,OUTPUT); pinMode(mi_velocidad,OUTPUT); pinMode(md_velocidad,OUTPUT); digitalWrite(mi_adelante,LOW); digitalWrite(md_adelante,LOW); digitalWrite(mi_atras,LOW); digitalWrite(md_atras,LOW); Serial.begin(9600); } void loop() { analogWrite(md_velocidad, 60); //seteo las dos velocidades a 60 analogWrite(mi_velocidad, 60); digitalWrite(mi_adelante,HIGH); //arranca el motor izq adelante delay(2000); //espero dos segundos digitalWrite(md_adelante,HIGH); //arranca el motor derecho adelante delay(2000); //espero dos segundos analogWrite(mi_velocidad, 120); //aumento velocidad del izq a 120 delay(2000); //espero dos segundos analogWrite(mi_velocidad, 180); //aumento velocidad del izq a 180 delay(2000); //espero dos segundos digitalWrite(md_adelante,LOW); //freno el derecho analogWrite(md_velocidad, 160); //aumento la velocidad del derecho a 160 digitalWrite(md_atras,HIGH); //arranca el derecho para atras delay(2000); //espero dos segundos digitalWrite(mi_adelante,LOW); //freno el izq delay(3000); //espero tres segundos analogWrite(mi_velocidad, 255); //seteo velocidad del izq al maximo digitalWrite(mi_atras,HIGH); //lo arranco a fondo delay(2000); //espero dos segundos analogWrite(md_velocidad, 255); digitalWrite(md_atras,HIGH); //arranco a fondo el otro delay(2000); //espero dos segundos digitalWrite(md_atras,LOW); //FRENO LOS DOS digitalWrite(mi_atras,LOW); delay(2000); //espero dos segundos //vamos a aumentar los dos incrementalmente analogWrite(mi_velocidad, LOW); analogWrite(md_velocidad, LOW); digitalWrite(md_adelante,HIGH); digitalWrite(mi_adelante,HIGH); for (int i=0; i <= 255; i++){ analogWrite(mi_velocidad, i); analogWrite(md_velocidad, i); delay(100); } //vamos a decrementarlos for (int i=255; i >= 0; i=i-1){ analogWrite(mi_velocidad, i); analogWrite(md_velocidad, i); delay(100); } //frenamos todo por las dudas digitalWrite(mi_adelante,LOW); digitalWrite(md_adelante,LOW); digitalWrite(mi_atras,LOW); digitalWrite(md_atras,LOW); } Por ultimo les dejo un video de como funciona: link: https://www.youtube.com/watch?v=TWt0pWP8wUs SALUDOS!
Hola a todos, aca les dejo un pequeño proyecto para arduino. Se trata de una barrera infrarroja del tipo que se usan para las alarmas. El circuito funciona de la siguiente manera: El diodo emisor genera luz infrarroja en linea recta hacia el fototransistor, este ultimo varia la tension en funcion de la cantidad de luz infrarroja que recibe. El fototransistor esta conectado a la entrada analogica del arduino y al detectar que no recibe luz infrarroja activa una salida digital en donde se encuentra conectado el buzzer que sonara. Componentes: - 1 resistencia 220 ohm - 1 resistencia 220 kohm - 1 diodo emisor IR - 1 fototransistor - 1 buzzer 5v diagrama de conexion Fotos Video del funcionamiento link: https://www.youtube.com/watch?v=HbXQzs519E8 Codigo arduino void setup() { pinMode(11,OUTPUT); Serial.begin(9600); } void loop() { int sensor = analogRead(A5); if(sensor<25){ digitalWrite(11,HIGH); }else{ digitalWrite(11,LOW); } delay(1); } parece una pavada pero es bastante util por ejemplo si queremos prender una luz al atravesar una puerta y apagarla al salir o cosas por el estilo. SALUDOS