Detector de jefe Flatulant: 9 pasos (con imágenes)
Detector de jefe Flatulant: 9 pasos (con imágenes)
Anonim
Detector de jefe Flatulant
Detector de jefe Flatulant
Detector de jefe Flatulant
Detector de jefe Flatulant

Cuanto mayor me hago, más pequeño se vuelve mi cubículo. De hecho, ahora ni siquiera tengo un cubículo. Pero mi jefe solía entrar sin ser detectado y me sorprendía investigando para alguna tarea (WWW, para el jefe parecía navegar por la web) y me decía que me pusiera a trabajar. Quería ponerle un cencerro, pero estoy seguro de que no lo haría, así que tuve que pensar en otra cosa. (nota: el título debe ser "Flatulento").

Paso 1: Recogí este ingenioso generador de ruido por aproximadamente 6 dólares en la sección de juguetes de la tienda de alimentos

Recogí este ingenioso generador de ruido por aproximadamente 6 dólares en la sección de juguetes de la tienda de alimentos
Recogí este ingenioso generador de ruido por aproximadamente 6 dólares en la sección de juguetes de la tienda de alimentos

Puede leer el paquete usted mismo. Tiene alrededor de 6 "melodías" aleatorias diferentes. Pero, el elemento clave es el pequeño botón remoto RF que viene con él.

Paso 2: Y encontré esta pequeña joya en WalMart por aproximadamente $ 5.00

Y encontré esta pequeña joya en WalMart por aproximadamente $ 5.00
Y encontré esta pequeña joya en WalMart por aproximadamente $ 5.00

Obviamente se enciende una pequeña luz (LED) cuando se detecta movimiento, y la habitación está a oscuras. (Hmmmmm, me pregunto si podría…)

Paso 3: de acuerdo. Abramos el sensor de movimiento y echemos un vistazo …

Bueno. Abramos el sensor de movimiento y echemos un vistazo …
Bueno. Abramos el sensor de movimiento y echemos un vistazo …

Bueno, etiqueté todo. La fotocélula (no se muestra, pero créanme, está ahí) sirve para evitar que la luz (LED) se encienda durante el día y, por lo tanto, prolonga la vida útil de la batería.

La lente Fresnel está ahí para proporcionar un amplio campo de visión para el sensor de movimiento. Fresnel se pronuncia frie-nel, búsquelo en Wikipedia para obtener más información.

Paso 4: Hagamos algo de pirateo

Hagamos algo de pirateo
Hagamos algo de pirateo

Primero, ve ese detector de movimiento PIR. PIR significa "infrarrojos pasivos". Algunas personas lo llaman un "infrarrojo Pyro". No sé por qué. Independientemente, no hackearemos eso. Puede que necesitemos algo más tarde.

A continuación, hemos (bueno, yo … pero el real nosotros) hemos cubierto esa fotocélula de la que les hablé. Verá, quiero que mi detector de jefes esté activo día y noche. Entonces, al cubrirlo, piensa que está en la oscuridad incluso cuando las luces están encendidas. Pero, acabamos de ponerle la lana sobre los ojos (en realidad, un ojo) y ahora se mantiene en la oscuridad. Y puedes ver que hemos instalado nuestra propia fotocélula justo al lado del LED. Ese pequeño truco nos permite saber cuándo se enciende el LED porque se ha detectado movimiento. Por supuesto, podríamos haber tendido un cable desde el LED para lograr el mismo propósito, pero ¿dónde está la diversión en eso? Lo divertido de hackear es hackearlo de forma diferente a otros hackers, como ocurre con los demás ingenieros eléctricos. Y eso hace que tu truco sea realmente original.

Paso 5: El circuito de la fotocélula

El circuito de la fotocélula
El circuito de la fotocélula

La fotocélula, como la que puede comprar en Radio Shack, tiene una resistencia de aproximadamente 50k ohmios sin exposición a la luz, y aproximadamente 5k ohmios o menos cuando se expone a una luz brillante. Entonces, si usamos una resistencia en serie con la fotocélula, que es solo una resistencia, y la atamos a una fuente de voltaje y tierra, entonces tenemos un divisor de voltaje. A partir de ahí, tocar entre las dos resistencias proporciona una señal de voltaje que sube o baja, y se puede usar para activar un dispositivo. En este caso, el detector de movimiento utiliza 3 baterías AA, que son de 4,5 voltios. Y así es como se conecta el circuito para proporcionar la señal necesaria para impulsar otros componentes electrónicos. Con el LED apagado, la señal del circuito es de aproximadamente 1,7 voltios, con el LED encendido, la señal aumenta a aproximadamente 3,5 voltios, lo que es suficiente para activar un microcontrolador.

Paso 6: Hackear el botón Whoopee del control remoto

Hackear el botón Whoopee del control remoto
Hackear el botón Whoopee del control remoto

Hay un botón, lo que significa que en algún lugar hay dos pines, que cuando están en circuito cerrado, hacen que el cojín de gritos haga su trabajo. Los pines son bastante obvios, así que no mostré esa parte. Pero, hice un pequeño agujero y pasé un par de cables a las clavijas de los botones. Y, usando un relé de lengüeta de 5v de Radio Shack, puedo conectar los dos pines energizando el relé de lengüeta.

Paso 7: Ahora la parte complicada

Ahora la parte complicada
Ahora la parte complicada

No es tan complicado si sabes un poco sobre electrónica, pero el trato es que necesitas usar la señal de activación para activar el sistema. Puede usar un temporizador de un disparo, o un comparador, o un temporizador 555, pero, para mí, lo más fácil es usar un microcontrolador de 8 pines. Usé un PIC Micro 12F675. Con eso, podría disparar al cambiar la entrada de un pin y hacer parpadear un LED rojo. Además, si entran 5 personas, no quiero que la cosa se vuelva loca durante 15 segundos, así que puse un retraso de 30 segundos para poder presionar un interruptor de apagado y apagarlo. Por lo tanto, lo haré rápido y mostraré el resultado final del artilugio. Tenga en cuenta que cubrí el LED para que el exjefe no viera que se enciende una luz cada vez que irrumpió en mi humilde 1/4 de cubículo. Esta foto es el producto final. Dejaré la electrónica como ejercicio para el alumno. Aquí está el código para el PIC Micro 12F675:; ************************** ************************************************; Nombre de archivo: Flatulant_Boss; Procesador: 12F675; Autor: Alan Mollick (alanmollick.com); Modo: Interrupción al cambiar GP2;; ~ REGISTROS GPIO ~; GP0 = ENTRADA - n / c; GP1 = SALIDA - relé; GP2 = ENTRADA - Alto = movimiento detectado; GP3 = ENTRADA - n / c; GP4 = SALIDA - LED rojo; *************************************** ********************************** lista p = 12F675; directiva list para definir el procesador # include; definición de variable específica del procesador nivel de error -302; suprimir el mensaje 302 del archivo de listaCONFIG _CP_OFF & _CPD_OFF & _BODEN_OFF & _MCLRE_OFF & _WDT_OFF & _PWRTE_ON & _INTRC_OSC_NOCLKOUT; ~ Variables ~ w_temp EQU 0x20; variable utilizada para guardar el contexto status_temp EQU 0x21; variable utilizada para guardar contexto hiB EQU 0x21; MSBytelowB EQU 0x22; LSBytetemp EQU 0x23 repuesto EQU 0x24 temp1 EQU 0x25; señal de interrupción de disparo temp2 EQU 0x26 retardo EQU 0x27; retardo timepins EQU 0x28; estados del pinpare1 EQU 0x29spare2 EQU 0x2acount EQU 0x2b; bucle countcount1 EQU 0x2c; recuento de bucle externo count2 EQU 0x2d; recuento de bucle exterior d1 EQU 0x2e; contador de retardo d2 EQU 0x2f; contador de retardo d3 EQU 0x30; contador de retardo d4 EQU 0x31; contador de demoras; ******************************************** *********************** RESET_VECTOR ORG 0x000; vector de reinicio del procesador goto main; ir al principio del programaINT_VECTOR ORG 0x004; interrumpir la ubicación del vector movwf w_temp; guardar el contenido actual del registro W movf STATUS, w; mover el registro de estado al registro W movwf status_temp; guardar el contenido del registro STATUS; código isr llamada motion_detect; enviar señales de alarma banksel INTCON bcf INTCON, INTF; borrar el indicador GP2 / INT movf status_temp, w; recuperar copia del registro STATUS movwf STATUS; restaurar el contenido del registro STATUS previo a isr swapf w_temp, f swapf w_temp, w; restaurar el contenido del registro anterior-isr W retfie; volver de la interrupción; ******************************************** ******************principal:; programa principal; estas primeras 4 instrucciones no son necesarias si no se utiliza el oscilador interno, llame a 0x3FF; recuperar el valor de calibración de fábrica bsf STATUS, RP0; establezca el banco de registro de archivos en 1 movwf OSCCAL; actualizar el registro con el valor de calibración de fábrica bcf STATUS, RP0; establecer el banco de registro de archivos en 0; **********************************; * Inicialización *; *** *******************************; GP0 = no utilizado, GP1 = salida de relé, GP2 = entrada (detección de movimiento); GP3 = entrada para cntrl / corte de emergencia, GP4 = salida al indicador LED; GP5 = no utilizado; configurar la dirección de los pines de E / S banksel TRISIO movlw b'00000101 '; xx ------ no implementado; --0 ----- 0 = salida, GP5 = n / c; --- 0 ---- 0 = salida, GP4 = LED; ---- x --- no utilizado, GP3, dedicado a MCLR; ----- 1-- 1 = entrada, movimiento GP2 detectado; ------ 0-0 = salida, GP1 = válvula solenoide; ------- 1 1 = entrada GP0 = A / D movwf TRISIO; configurar el convertidor A / D banksel ANSEL movlw b'00010000 '; x ------- no implementado; -001 ---- 001 = Reloj de conversión Focs / 8; ---- 0 --- 0 = E / S digital, GP4, Fosc / 4 clockout para fines de depuración.; ----- 0-- 0 = E / S digital, GP2; ------ 0-0 = E / S digital, GP1, relé / etc; ------- 0 0 = E / S digital, 1 = analógico GP0 movwf ANSEL banksel ADCON0 movlw b'00000000 '; 0 ------- 1 = resultado justificado a la derecha; -0 ------ 0 = Vdd es la referencia de voltaje; --xx ---- no implementado; ---- 00-- 00 = seleccione el canal 0 (GP0); ------ 0-0 = No se inició la conversión A / D; ------- 0 0 = El módulo convertidor A / D está apagado movwf ADCON0; inicializar salida pinsinit banksel GPIO movlw b'00000000 'movwf GPIO; inicializar interrumpe el banco INTCON movlw b'00000000 '; 0 ------- 0 = interrupciones globales deshabilitadas; -0 ------ 1 = habilitar interrupciones periféricas; --0 ----- 0 = deshabilitar la interrupción de desbordamiento de TMR0; --- 1 ---- 1 = habilitar interrupción externa GP2 / INT; ---- 0 --- 0 = deshabilitar la interrupción de cambio de puerto GPIO; ----- 0-- 0 = no en desbordamiento TMR0; ------ 0-1 =; ------- 0 0 = sin cambio de puerto GPIO movwf INTCON; inicializar interrupción en el cambio de pin GP2 banksel IOC movlw b'00000100 '; x ------- no implementado; -x ------ no implementado; --0 ----- 0 = deshabilitar GP5; --- 0 ---- 0 = deshabilitar GP4; ---- 0 --- 0 = deshabilitar GP3; ----- 1-- 1 = habilitar GP2 / INTR *****; ------ 0-0 = deshabilitar GP1; ------- 0 0 = deshabilitar GP0 movwf IOC banksel PIE1 movlw b'00000000 '; 0 ------- 0 = deshabilitar la interrupción completa de escritura EE; -0 ------ 0 = deshabilitar la interrupción del convertidor A / D; --xx ---- no implementado; ---- 0 --- 0 = interrupción del comparador deshabilitada; ----- xx- no implementado; ------- 0 1 = habilitar interrupción de desbordamiento TMR1 movwf PIE1 banksel PIR1 movlw b'00000000 '; 0 ------- 0 = sin escritura EE completa; -0 ------ 0 = sin conversión A / D completa; --xx ---- no implementado; ---- 0 --- 0 = sin interrupción del comparador; ----- xx- no implementado; ------- 0 0 = sin desbordamiento de TMR1 movwf PIR1; ******************************** ************************; GP1 = salida a relé; GP4 = salida a LED; ****************************************** ************** banksel INTCON bsf INTCON, INTE; habilitar GP2 interrupción bsf INTCON, GIEMain_Loop:; si GP2 = 1, entonces emite señales de alarma en GP1, GP4 a través de interrupción del sueño nop goto Main_Loop; ****************************** ***************************; Controlador de interrupciones de detección de movimiento;; GP1 = salida a relé, GP4 = salida a LED; ************************************ ******************** detección_movimiento: bsf GPIO, 1; energizar el relé para una llamada de 100 mseg pause_100ms bcf GPIO, 1; desactivar el relé bsf GPIO, 4; activar LED durante 0,5 seg. llamar pause_500ms bcf GPIO, 4 return; **************************************** ****************; generador de código de retardo en línea; https://massmind.org/techref/piclist/codegen/delay.htm;****************************** ************************** pause_100msec:; Retraso = 0,1 segundos; Frecuencia de reloj = 4 MHz movlw 0x1F; 99998 ciclos movwf d1 movlw 0x4F movwf d2Delay_100 decfsz d1, f goto $ + 2 decfsz d2, f goto Delay_100 goto $ + 1; 2 ciclos returnpause_500msec:; Retraso = 0,5 segundos; Frecuencia de reloj = 4 MHz movlw 0x03; 499994 ciclos movwf d1 movlw 0x18 movwf d2 movlw 0x02 movwf d3Delay_500 decfsz d1, f goto $ + 2 decfsz d2, f goto $ + 2 decfsz d3, f goto Delay_500 goto $ + 1; 6 ciclos goto $ + 1 ir a $ + 1 returnpause_1sec; Retraso = 1 segundo; Frecuencia de reloj = 4 MHz movlw 0x08; 999997 ciclos movwf d1 movlw 0x2F movwf d2 movlw 0x03 movwf d3Delay_1sec decfsz d1, f goto $ + 2 decfsz d2, f goto $ + 2 decfsz d3, f goto Delay_1sec goto $ + 1; regreso;************************************************ *****************************

Paso 8: Palabras finales

Ultimas palabras
Ultimas palabras

Esta foto es una forma de ocultarlo todo.

Nota: al usar un microcontrolador, el número de variaciones en este instructable es ilimitado. Puede colocar el altavoz para que el sonido emane detrás de su jefe. O puede vincularlo al sistema de megafonía de la empresa. Incluso puede hacer que el sistema haga ping a su computadora y que aparezca una página relacionada con el trabajo en 1/10 de segundo para que cada vez que su exjefe, o cualquier otra persona entre en su perímetro, siempre haya una hoja de cálculo o un documento técnico. en el que deberías estar trabajando. Y las 24 horas del día, los 7 días de la semana … cualquiera que entre o salga de su cubículo puede decir que tiene la nariz pegada a la piedra de afilar cada segundo del día. Eso lo convierte en un empleado muy valioso. Eres un maldito adicto al trabajo. Además, realmente no necesitas la lente Fresnel. De hecho, para la detección de jefes, es mejor eliminarlo, de lo contrario, las personas que se mueven dentro de su cubículo lo activarán. Puede quitarse la lente de Fresnel y colocar un trozo de tubo de PVC de 1 pulgada (1/2 pulgada de diámetro de Home Depot) en el detector PIR y eso le dará un campo de visión muy estrecho, como directamente en la entrada de su puerta (suponiendo tiene una puerta) pero el sensor funciona igual de bien. Su alcance es de aproximadamente 5 a 10 pies sin la lente de Fresnel. También puede quitar el detector PIR y utilizando 3 cables, puede colocar el detector en cualquier lugar para ocultarlo. Incluso puedes comprar un módulo de sonido por 6 dólares y grabar tus propios sonidos. Puede utilizar la señal internacional para "el jefe se acerca" que se está aclarando la garganta. Y puedes cambiarlo todas las mañanas. O grabe el sonido de usted escribiendo febrilmente, etc. Aquí hay un efecto de sonido que hice con ese cojín whoopee, lo ejecuté en mi computadora, lo edité con Audacity y lo usé para un truco de Easy Button que podría poner algún día.

Paso 9: una variación

Una variacion
Una variacion

Aquí hay otro detector de jefes basado en el mismo concepto. Además, alguien quería un video, así que publicaré un video para esto pronto. El detector de este es obviamente un Robo Sapien acoplado a un detector de movimiento de Home Depot. Cuando se detecta movimiento, el robot envía una señal de infrarrojos a la jaula de pájaros donde hay un detector oculto de 38 kHz. El mecanismo del pájaro tiene varias opciones. Todas las opciones se pueden seleccionar individualmente, pero con todo encendido, el pájaro comienza a girar, a piar, con un LED parpadeante. También agregué un LED rojo superbrillante montado debajo que parpadea 4 veces para que sepas que alguien viene sin toda la raqueta. Este también tiene un retraso de 30 segundos, y puede desactivarlo todo simplemente levantando el lápiz. El lápiz tiene un imán en el extremo que, cuando se inserta en el comedero para pájaros, habilita el circuito a través de un pequeño relé de lengüeta magnética. La única diferencia real en este sistema es que no utilicé el truco de la fotocélula. Hay un amplificador operacional cuádruple en el detector de movimiento, y acabo de desconectar el pin de salida de la etapa final. Compré varias de estas cosas para pájaros en una farmacia porque estaban en oferta por 5 dólares cada una. Luego agregué piedras y vegetación para ocultar el detector de infrarrojos, e hice una pequeña caja de madera de cerezo y la barnicé para ocultar la batería AA adicional que necesitaba. La cosa funciona con 2 pilas AA y se activa por sonido. Lo hice menos sensible al sonido y necesitaba la batería adicional porque el detector de 38 kHz que usé necesitaba al menos 4.5 voltios, lo que significa 3 baterías. El detector de movimiento se hizo para enchufarlo a un tomacorriente de pared, así que corté las cosas grandes de la placa de circuito y ahora funciona con una batería de 9v instalada donde estaba ubicada la bombilla.

Aquí hay un enlace a un video de este video.