Tabla de contenido:

Secuestrador de conmutadores genérico: 3 pasos
Secuestrador de conmutadores genérico: 3 pasos

Video: Secuestrador de conmutadores genérico: 3 pasos

Video: Secuestrador de conmutadores genérico: 3 pasos
Video: LLAMADA de EXTORSIONAR PRIMO de USA me QUERÍA ROBAR 2024, Mes de julio
Anonim
Secuestrador de conmutadores genérico
Secuestrador de conmutadores genérico

Este artículo describe cómo construir un dispositivo de microcontrolador de estado sólido que controle interruptores físicos. Es muy económico de hacer (4 $ más o menos), asumiendo que tiene un programador de microcontroladores. El circuito en sí es de una complejidad trivial.

Este proyecto es muy simple y no implica nuevas técnicas sorprendentes. Serviría como un buen primer proyecto de microcontrolador. El código fuente de ensamblaje se le proporcionará en este artículo. Tengo un jefe genial en el trabajo. A veces, nos gusta gastarnos bromas entre nosotros. Desafortunadamente para él, soy un científico. Mi propósito aquí es hacer que varios dispositivos en el lugar de trabajo se enciendan misteriosamente durante cortos períodos de tiempo. Radios, impresoras ruidosas, incluso esas molestas tarjetas musicales de cumpleaños escondidas en algún objeto común. Además de eso, el proyecto es un ejemplo de cómo se controlan cargas más pesadas con un AVR que las que los pines de salida pueden manejar por sí mismos. Esta es una amplia variedad de cosas, ya que los pines de salida solo le dan un voltaje pequeño y una corriente muy limitada. Este circuito podría ampliarse con un relé para controlar algunas cargas muy pesadas.

Paso 1: Diseño y circuito

Diseño y Circuito
Diseño y Circuito

Para este proyecto, puede usar casi cualquier microcontrolador, regulador de voltaje de 5v y transistor NPN. Solía:

1x ATtiny26L-8PU (~ 2 $) 1x TL780 regulador de voltaje de 5v (~ 0.7 $) 1x transistor N2222 (~ 0.07 $) 1x batería de 9v, o batería de control remoto de 12v para ahorrar espacio … y por supuesto mi confiable STK500, ahora con ZIF enchufes agregados! El diseño básico es el siguiente: el microcontrolador pasa por dos bucles de temporización. Un ciclo largo para determinar cuándo encender el dispositivo y un ciclo corto para determinar cuánto tiempo mantener encendido el dispositivo. Cuando llega el momento de causar problemas, el microcontrolador envía un pin alto lógico 14 (bit menos significativo de PORTA). Esto enciende el transistor. Si ha conectado las pinzas a los cables de un interruptor, la resistencia a través del interruptor cae repentinamente de muy alta a menos de 1 ohmio, lo cual es suficiente para que la mayoría de los dispositivos consideren el interruptor encendido. Tenga en cuenta que los transistores también son diodos, por lo que si no funciona … la polaridad de las pinzas probablemente sea incorrecta, ¡cámbielas! Además, este dispositivo requiere una batería decente de 9v, digamos con más de 8v de potencial restante … aparte de eso, no consume mucha energía. Hay muchos pines sin usar, por lo que, por supuesto, podría usarlos para controlar más interruptores y generar más caos, pero esto fue suficiente para mis propósitos. El siguiente paso es el código fuente que escribí para que esto funcione. Las duraciones predeterminadas para los estados "encendido" y "apagado" son aproximadamente 10 segundos y 13 minutos respectivamente. Hay comentarios en el código sobre cómo cambiar estos valores. Finalmente, disculpe el uso extensivo de la función "nop" (gasta un ciclo de CPU sin hacer nada) para ajustar los temporizadores. ¡No es elegante ya que puede romper la función rjmp si no tiene cuidado con la cantidad que usa!

Paso 2: código fuente

COMIENZO:

. INCLUYE "tn26def.inc"; Archivo de definición. Busque en Google si necesita una copia. clr r30 clr r29 clr r28 clr r27 ldi r28, 0b00000000 ldi r27, 0b11111111 ldi r26, 0b00000000 clr r25 out DDRA, r27 out PORTA, r28 TIMER: inc r30 nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop cpi r30, 0b11111111 breq TIMER2 rjmp TIMER TIMER2: nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop inc r29 cpi r29, 0b11311311 breq TIMER rj nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop inc r25 cpi r25, 0b11111111; baje este número para disminuir el tiempo de "apagado" breq FUNC rjmp TIMER FUNC: nop nop cpi r28, 0x00 breq FUNC2 dec r28 clr r30 clr r29 clr r25 out PORTA, r28 rjmp TIMER FUNC2: nop nop inc r28 out PORTA, r28 clr r25 clr r30 clr r29 rjmp TIMER4 TIMER4: inc r30 nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop cpi r30, 0b11111111 breq TIMER5 rjmp TIMER4 TIMER5: nop nop nop nop nop nop nop nop nop nop nop nop inc r29 cpi r29, 0b11111 111 breq TIMER6 rjmp TIMER4 TIMER6: inc r25 cpi r25, 0b00000011; Aumente este número para aumentar el tiempo de "encendido" breq FUNC rjmp TIMER4

Paso 3: Nota final

Diviértete, pero recuerda que el transistor tiene límites en cuanto a la cantidad de energía que puedes bombear a través de él. ¡Eso significa que no hay voltaje de red! Además del hecho de que sobrecargaría el transistor muy rápido, este dispositivo no controlará bien las señales alternas … a menos que aplique la modificación descrita a continuación * y * agregue un relé: Si le molesta preocuparse por la polaridad de la abrazadera, simplemente conecte un segundo transistor con la placa base conectada a la misma fuente que el primer transistor, pero con el colector y el emisor en la configuración opuesta. De esa manera, no importa cómo coloque las abrazaderas, un alto lógico que sale del microcontrolador siempre "encenderá" el interruptor. Tenga en cuenta que la corriente de fuga en este sistema puede ser suficiente para activar algunos interruptores sensibles como matrices de teclado, es posible que deba agregar una resistencia en serie para esta aplicación. Recuerde que puede extraer energía del dispositivo de destino en lugar de usar una batería. Finalmente… instalé el dispositivo dentro de una calculadora de contabilidad antigua, del tipo que tiene funciones de impresión. Realicé ingeniería inversa de la matriz del teclado usando un clip para determinar qué pines IC, cuando se conectaban, causarían alimentación de papel, y conecté los pines correctos junto con el dispositivo. Luego, desactivé el interruptor que te permite apagar la función de impresión. Considero que la máquina está correctamente subvertida. Enciende la alimentación de papel bastante ruidosa cada 10 minutos, durante 10 segundos, siempre que el dispositivo está encendido. También funcionó bien con el circuito de una de esas tarjetas de cumpleaños musicales hiper-desagradables. ¡Mi lugar de trabajo ahora es más extraño!

Recomendado: