miércoles, 15 de abril de 2015

Montaje de la Cámara

MONTAJE DE LA CÁMARA


Siga las instrucciones oficiales para el montaje de la cámara:

A continuación, si lo tienes, configurar el Cuello de Cisne 360. Esto le permitirá orientar la cámara en la parte derecha de la sala. Un extremo de la montura se inserta en la toma de auriculares del Pi; sólo lo utiliza para mantener en sí en su lugar y no hace nada para el gato. El otro extremo es un tornillo con un par de arandelas de plástico que fijan la placa cámara al cuello de cisne.
Debe tener algo similar a la imagen de abajo.



Si no lo ha hecho ya, pruebe la cámara está trabajando con el siguiente comando:

raspivid - t 0

Presione Ctrl + C para salir.


PROGRAMAR LA CAMARA (CODIGO)

Ahora estamos listos para extender nuestro programa anterior para darle la capacidad de controlar la cámara del tablero. Para empezar, vamos a hacer que se vea nuestro programa de lo que la cámara puede ver cuando se detecta movimiento; podemos configurar la grabación en un archivo más tarde.

Haga una copia del programa anterior y vamos a utilizar para que este paso:

cp pirtest . pirCamera py . py

Ahora utilice el siguiente comando para editar el archivo:

nano pirCamera . py

Primero tenemos que añadir el picamera importación declaración en la parte superior; esto permite que su programa para acceder al código pre-hechos que puede controlar la cámara del tablero. Entonces Declaramos el objeto de cámara de la leva, que proporciona todas las funciones de control de la cámara que tenemos que utilizar. Luego dentro del tiempo de bucle donde imprimimos el mensaje alto o bajo, podemos probar a ver si current_state es ALTA / True (se detecta que significa movimiento); entonces podemos iniciar o detener la vista previa de la cámara en consecuencia.
.

Código de la configuración de la cámara

importación RP _ . GPIO como GPIO
 importación tiempo
 importación picamera   # nuevo

sensor =  4

GPIO . setMode ( GPIO . BCM )
GPIO . setup ( sensor , GPIO . EN , GPIO . PUD_DOWN )

PREVIOUS_STATE =  False
current_state =  False

leva = picamera . PiCamera ( )   # nuevo

mientras  Verdadero :
    el tiempo . sueño ( 0,1 )
    PREVIOUS_STATE = current_state
    current_state = GPIO . input ( sensor )
    if current_state ! = previous_state :
        new_state =  "HIGH"  if current_state else  "LOW"
        print ( "GPIO pin% s es% s "  %  ( sensor , new_state ) )
        si current_state :   # nueva
             leva . start_preview ( )
        otra cosa :
            cam . stop_preview ( )

Presione Ctrl + O para guardar y Ctrl + X para salir. Para ejecutar el programa utilice el siguiente comando:

sudo python3 pirCamera . py

Presione Ctrl + C cuando se quiere salir.



GRABACIÓN EN UN ARCHIVO Y REPRODUCCIÓN

Ahora podemos añadir un poco más de código que nos permite grabar en un archivo para su reproducción en una etapa posterior. Idealmente, si hay muchos intrusos en su habitación que desea capturar a todos y no sólo el más reciente. Así que para hacer eso, necesitamos una forma de generar automáticamente un nuevo nombre de archivo se detecta cada movimiento del tiempo. La forma más fácil y segura de hacer esto es hacer un nombre de archivo de la fecha y la hora.

Por ejemplo, si el tiempo era el 11 de febrero 2014 a las 10:24 AM y 18 segundos, el nombre de archivo sería algo como esto: 2014-02-11_10.24.18.h264. Este utiliza el formato de año-mes-DAY_HOUR.MINUTE.SECOND.h264 ; la parte h264 es el formato que se grabará. Es el mismo formato utilizado por YouTube.
Para ello, tenemos que importar la fecha y hora del módulo Python y escribir una función para generar el nombre del archivo. Ver get_file_name a continuación; este utiliza la cadena de vezfunción para insertar los valores de la hora actual en el formato de cadena especificada. Entonces sólo tiene que utilizar los comandos para iniciar y detener la grabación con el nombre de archivo generado. Estos deben ocurrir al mismo tiempo que la previsualización de comandos respectivamente.
nano pirCamera . py

Cualquiera de modificar manualmente o copiar y pegar el código de abajo:

importación RP _ . GPIO como GPIO
 importación tiempo
 importación picamera
 importación datetime   # nueva

def get_file_name ( ) :   # nuevo
     retorno datetime . datetime . ahora ( ) . strftime ( "% Y-% m-% d_% H.% M.% S. h264 " )

sensor =  4

GPIO . setMode ( GPIO . BCM )
GPIO . setup ( sensor , GPIO . EN , GPIO . PUD_DOWN )

PREVIOUS_STATE =  False
current_state =  False

cam = picamera . PiCamera ( )

mientras  Verdadero :
    el tiempo . dormir ( 0,1 )
    PREVIOUS_STATE = current_state
    current_state = GPIO . input ( sensor )
    if current_state ! = previous_state :
        new_state =  "HIGH"  if current_state else  "LOW"
        print ( "GPIO pin% s es% s "  %  ( sensor , new_state ) )
        si current_state :
            nombreArchivo = get_file_name ( )   # nueva
             leva . start_preview ( )
            leva . start_recording ( nombreArchivo )   # nueva
         cosa :
            cam . stop_preview ( )
            leva . stop_recording ( )   # nuevo
Presione Ctrl + O para guardar y Ctrl + X para salir. Para ejecutar el programa utilice el siguiente comando:
sudo python3 pirCamera . py
Presione Ctrl + C cuando se quiere salir.

REPRODUCCIÓN

Si ahora utiliza los ls comando debería ver que algunos archivos se han generado. Usted puede utilizar el comando siguiente para reproducir un archivo. Reemplace <file> con el nombre del archivo que desea reproducir.

omxplayer <archivo> -o hdmi
Por ejemplo: omxplayer 2014-02-11_10.24.18.h264 -o hdmi


MODO INVISIBLE

Usted probablemente ha notado el LED de la placa de la cámara roja se enciende cuando se inicia el programa en Python. Esto será muy notable a cualquier posible intruso así que es una buena idea para desactivarlo. Esto se puede hacer mediante la edición del archivo de configuración de Raspberry Pi. Escriba el siguiente comando:

sudo nano / boot / config . txt

Agregue la siguiente línea al final del archivo:

disable_camera_led = 1

Presione Ctrl + O para guardar y Ctrl + X para salir. Los cambios sólo tendrán efecto después de un reinicio, por lo que entrar en el siguiente comando para hacer esto:
sudo reboot.

Si quieres dejar el monitor conectado y encendido mientras se ejecuta el programa, que es una buena idea para editar el código Python para desactivar la cámara de vista previa líneas. Utilice el # señal al comienzo de una línea para desactivarlo.


Otro truco que puedes hacer es comenzar su programa en Python bajo un nombre de usuario diferente. Para ello presione ALT - F2 antes de ingresar; esto le mostrará un nuevo aviso de la conexión, por lo que entrar allí y empezar el programa Python. Ahora bien, si se presiona ALT - F1 para volver al indicador habitual de inicio de sesión, aparecerá como si el Raspberry Pi es inocentemente esperando a alguien para iniciar sesión.

Montaje del Sensor PIR

MONTAJE DEL SENSOR PIR

PIR significa infrarrojo pasivo. Es posible que haya visto esto antes, ya que son muy comunes en estos días. Más a menudo que puedes encontrar en las esquinas de las habitaciones para los sistemas de alarma antirrobo. Todos los objetos cuyas temperaturas están por encima del cero absoluto emiten radiación infrarroja. Infra longitudes de onda rojas no son visibles para el ojo humano, pero pueden ser detectadas por la electrónica dentro de uno de estos módulos.

El sensor es considerado como pasivo porque no envía ninguna señal con el fin de detectar el movimiento. Se ajusta a la firma infrarroja de la sala que se encuentra en y luego relojes para cualquier cambio. Cualquier objeto que se mueve a través de la sala de perturbará la firma infrarroja, y provocará un cambio de ser notado por el módulo PIR.


Nosotros no tenemos que preocuparnos de su funcionamiento interno. Lo que nos interesa son los tres alfileres en ella; podemos conectar a aquellos a los pines GPIO Raspberry Pi:

·      1 pin es para 5 voltios.
·      2 pin es para tierra.
·      3 pin de sensor (el pin central en nuestra Pi). Este pin sensor recibirá energía cuando el movimiento es detectado por el módulo PIR.


Conexión del Sensor de Movimiento PIR

Antes de arrancar el Raspberry Pi, conectar el módulo PIR al Raspberry Pi.

A partir de tres cables de arranque de mujer a mujer, tendrás que conectar cada uno de los conectores del sensor PIR a los pines correspondientes en el Raspberry Pi.

Conecte el superior etiquetada VCC en el sensor PIR al pin 5 V en la Raspberry Pi, conecte el del medio marcado OUT al pin GPIO 4, y conectar la parte inferior una marcada GND a un conector de tierra también marcada GND. Como se muestra en la siguiente imagen.


Ahora arranque su Pi e ingrese.



Comprobación del Sensor de Movimiento PIR

Vamos a utilizar el lenguaje de programación Python para escribir algo de código que detectará el movimiento e imprimir un texto; podemos ampliar el programa para involucrar a la placa de la cámara después. Cuando se detecta movimiento, el sensor de movimiento PIR se aplica potencia a su pin OUT, que hemos conectado al pin GPIO 4 en el Pi. Así que en nuestro código sólo tenemos que comprobar continuamente pin 4 para ver si tiene el poder o no.

Si un pin tiene poder llamarlo ALTA y si no lo llamamos BAJO.

El programa es bastante simple. Primero vamos a configurar los pines Raspberry Pi GPIO para permitirnos usar el pin 4 como entrada; A continuación, puede detectar cuando el módulo PIR envía potencia. Tenemos que comprobar continuamente el pasador para cualquier cambio, por lo que un While True bucle se utiliza para esto. Este es un bucle infinito por lo que el programa se ejecutará de forma continua a menos que detengamos manualmente con Ctrl + C.

A continuación, utilizamos dos variables de Boole (verdadero o falso) para los estados anteriores y actuales de la clavija, el estado anterior de ser lo que el estado actual es el tiempo precedente alrededor del bucle. Dentro del bucle comparamos el estado anterior al estado actual de detectar cuando son diferentes. No queremos seguir mostrando un mensaje si no ha habido ningún cambio.


Código Sensor de Movimiento PIR

En primer lugar crear un archivo de Python en blanco con el siguiente comando:

nano pirtest. py

Escriba o copie y pegue el código de abajo:

importación RP _ . GPIO como GPIO
 importación tiempo

sensor =  4

GPIO . setMode ( GPIO . BCM )
GPIO . setup ( sensor , GPIO . EN , GPIO . PUD_DOWN )

PREVIOUS_STATE =  False
current_state =  False

mientras  Verdadero :
    el tiempo . dormir ( 0,1 )
    PREVIOUS_STATE = current_state
    current_state = GPIO . input ( sensor )
    if current_state ! = previous_state :
        new_state =  "HIGH"  if current_state else  "LOW"
        print ( "GPIO pin% s es% s "  %  ( sensor , new_state ) )

Presione Ctrl + O para guardar y Ctrl + X para salir.


Ahora ejecute el archivo de Python:

sudo python3 pirtest . py

Si obtiene un error diciendo RuntimeError: No hay acceso a / dev / mem significa que se olvidó de usar sudo. Debe ejecutar los programas que acceden a la GPIO como root y sudo hace por usted; para ayudar recuerde que usted puede pensar en él como 'super-usuario-do'.

Si usted comienza a moverse o agitando el pin de sensor será alta. Sigue agitando y se mantendrá ALTA, y sólo volver a LOW si sigues siendo de nuevo. Si ve el sensor se comporta así, entonces todo está funcionando correctamente. Si no es así, algo está mal y hay que volver y solucionar problemas.

Pin GPIO 4 es ALTO
Pin GPIO 4 es BAJO
Pin GPIO 4 es ALTO

Presione Ctrl + C cuando se quiere salir.




En el módulo PIR verá que hay dos componentes de color naranja con tomas que se ajusten a un destornillador de estrella (ver arriba). Estos se llaman potenciómetros, y que le permiten ajustar la sensibilidad del sensor y el tiempo de detección. Yo sugeriría ajustar la sensibilidad al máximo y el tiempo de minutos, pero la elección es suya.

miércoles, 8 de abril de 2015

Materiales

MATERIALES

·      HARDWARE

Raspberry PI FRAMBUESA 1 MODELO B +

El Modelo B + es la revisión final de la Frambuesa Pi originales. Se sustituye el modelo B en julio de 2014 y fue reemplazado por el Raspberry Pi 2 Modelo B en febrero de 2015. En comparación con el modelo B tiene:

GPIO. La cabecera GPIO ha crecido hasta 40 pines, mientras que conserva el mismo pinout para los primeros 26 pines como el modelo A y B.

USB. Ahora tenemos 4 puertos USB 2.0, frente a 2 en el Modelo B, y una mejor conexión en caliente y el comportamiento de sobre corriente.

Micro SD. El antiguo zócalo de la tarjeta SD de ajuste por fricción ha sido reemplazado con un push-push versión mucho más agradable micro SD.

Menor consumo de energía. Mediante la sustitución de reguladores lineales con los de conmutación hemos reducido el consumo de energía entre 0.5W y 1W.
Mejor audio. El circuito de audio incorpora una fuente de alimentación de bajo ruido dedicado.

Neater factor de forma. Hemos alineado los conectores USB con el borde de la placa, se trasladó de vídeo compuesto en el conector de 3,5 mm, y añadió cuatro orificios de montaje colocados en ángulo recto.

El Modelo B + es perfectamente adecuado para su uso en las escuelas: ofrece una mayor flexibilidad para los estudiantes que el modelo más delgado A o A +, que son más útiles para los proyectos y los proyectos integrados que requieren de muy baja potencia, y tiene más puertos USB que el modelo B.


Así como un Pi frambuesa con una tarjeta SD y los periféricos habituales, también necesitará:


Módulo de la Cámara

El módulo de la cámara Raspberry Pi se puede utilizar para tomar video de alta definición, así como alambiques fotografías. Es fácil de utilizar para los principiantes, pero tiene mucho que ofrecer a los usuarios avanzados si usted está buscando para ampliar su conocimiento. Hay un montón de ejemplos en línea de personas que lo usan para time-lapse, cámara lenta y otra inteligencia video. También puede utilizar las bibliotecas que Bundle con la cámara para crear efectos.

Si usted está interesado en el meollo de la cuestión, usted querrá saber que el módulo tiene una cámara de foco fijo de cinco megapíxeles que soporta 1080p30, 720p60 y vídeo VGA90 modos, así como imágenes fijas de captura. Se une a través de un cable de cinta de 15 cm al puerto CSI en la Raspberry Pi.

La cámara funciona con todos los modelos de Raspberry Pi 1 y 2. Se puede acceder a través de las API MMAL y V4L, y hay numerosas bibliotecas de terceros creadas para ello, incluyendo la Picamera biblioteca de Python.

El módulo de la cámara es muy popular en aplicaciones de seguridad para el hogar, y en la vida silvestre  cámaras trampa.


Cables de Puente

Colores del arco iris tiras de puente, perfecto para usar con nuestros mini-placas universales

Cada tira de carne seca contiene 40 cables puente individuales, 185 mm de largo, que se separan fácilmente en múltiplos de su elección, si es necesario. Ideal para hacer cables de cinta de mini para sus proyectos

Estos son el puente de calidad muy alto conduce con encabezados de DuPont y sensación preciosa, de colores brillantes por cable con un acabado mate suave.
Si bien estos no son los más baratos de puente lleva usted encontrará que usted continúa usando una y otra vez - no usaríamos cualquier otra cosas.


·      Software
No hay requisitos de software adicionales para este recurso más allá de lo que está preinstalado en la imagen Raspbian actual.


·      Otros
Necesitaremos montaje de la cámara y sensor.

DETECTOR DE PERSONAS

DETECTOR DE PERSONAS


LO QUE VA A HACER

Cómo utilizar un Raspberry Pi para detectar que ha estado en su habitación. Un Raspberry Pi es tan pequeño que fácilmente se puede ocultar; que hace que sea la herramienta perfecta para un dispositivo oculto que detecta los visitantes no deseados a su dormitorio.

En este tutorial vamos a hacer un detector de padres que utilizan la detección de movimiento para activar la grabación de vídeo a través del Pi Junta Cámara frambuesa. A continuación, puede salir del Pi escondido en su habitación y ver que ha sido captado por la cámara cuando llegue a casa de la Universidad o del Trabajo.


LO QUE APRENDERÁ

Mediante la creación de un detector de padre con su Raspberry Pi usted aprenderá:

·      ¿Cómo configurar y utilizar un módulo de la cámara Raspberry Pi?

·  Cómo tomar fotos con la cámara con Python siguiendo importar las bibliotecas correctas y siguiendo una secuencia de instrucciones.

·      ¿Cómo configurar y utilizar un sensor PIR por primera vez el uso de un tiempo cierto lazo en Python?

·      Cómo utilizar variables para almacenar la información dentro de su código Python para que sea más eficiente y más fácil de leer.

·      Cómo agregar código a su programa de Python para detectar el movimiento, activar la cámara para grabar y almacenar el archivo de vídeo mediante funciones.


·      Cómo reproducir cualquier vídeo grabadas desde la línea de comandos.