dilluns, 7 de desembre del 2015

Disseny d'un sistema de vigilància remota amb Raspberry Pi ( Part 3 - Instal·lació de "motion" per Raspberry i configuració)

Aquesta part del projecte consistirà en instal·lar a la Raspberry un programa anomenat "motion". Aquest programa és capaç de captar imatges seguidament i enviar-les a Internet, fent-les visibles per qualsevol dispositiu connectat a la pàgina on les emet.
L'inconvenient és que s'ha d'editar la configuració del programa, ja que la per que hi ha per defecte no s'ajusta a les nostres necessitats.


  1. El primer pas és instal·lar el programa. Per això iniciarem la Raspberry i obrirem el terminal. La ordre a executar és:

    # sudo apt-get install motion
  2. En segon lloc, copiarem el fitxer de configuració del programa a algun directori per modificar-lo.

    # sudo cp /etc/motion/motion.conf /home/pi (nom del directori on copiar el fitxer)
     
    En aquest cas, pi és el nom del nostre directori però es pot canviar si voleu desar el fitxer en algun lloc diferent.
      
  3. Com hem copiat el fitxer com a superusuari (amb l'ordre sudo), el propietari del fitxer també serà el superusuari i no podrem modificar-lo si no ho som en un futur. Per això, canviarem el propietari del fitxer a l'usuari (en el nostre cas, pi) amb la ordre següent:


    # sudo chown (change owner) pi.pi motion.conf 



      
  4. Seguidament, passarem a editar el fitxer de configuració del programa però per això ens caldrà un editor de programes. Nosaltres n'utilitzarem un anomenat "vim" que Raspbian ja conté per defecte.
    Per utilitzar-lo el que haurem de fer és, en el terminal escriure el nom de l'editor i seguidament, el del fitxer. Hauria de ser així en el terminal:
    # vim motion.conf
    L'avantatge de vim és que és un editor que diferencia els comentaris del programa de les ordres i les pot ressaltar en colors diferents però, per que això es dugui a terme, un cop obert el programa li inserirem l'ordre:


    :syntax on (syntax off per desactivar el ressaltant)
      
    Desactivada la syntax, comentaris i ordres apareixen amb el mateix color.


    Un cop activada, els comentaris es ressaltaran en blau.
      
    Els  comentaris es detecten fàcilment perquè els precedeixen un #.
  5. Per entrar en el mode d'edició del fitxer utilitzarem la tecla I i per sortir-ne, la tecla Esc. Apretem I.
    Ara ja podem passar a realitzar les modificacions del programa.

    Paràmetres a canviar
    Per canviar el paràmetre, simplement hem de buscar el que volem en un color diferent a blau i aleshores canviar l'escrit per el nou (p.e. si un paràmetre es troba en "on" i l'hem de desactivar, canviarem "on" per "off". El nou paràmetre que s'ha de substituir és el que escriurem a continuació.

    - Desactivar el daemon → daemon off
     El daemon és un servidor que, si està activat fa que les nostres ordres es duguin a terme en segon pla. Com a conseqüència ens podem perdre algunes de les notificacions que es facin i ens convé tenir-lo desactivat.


     Com es pot veure, l'ordre no està en color blau i canviarem "on" per "off" allà on diu daemon. Els comentaris ens expliquen que és el que fa cada ordre, o sigui que si en trobeu una que sigui del vostre interès, podeu canviar-la per tal que s'ajusti a les vostres necessitats. Tingueu en comte que en el comentari hi acostumen a haver les altres possibles instruccions.


    Configurar les dimensions de la imatge → width 360 (o 640 o 1024) → height 200 (o 480 o 768) 
    El que aconseguirem amb això és configurar la mida de la imatge a l'hora de visualitzar-la, l'amplada i l'altura han de ser sempre proporcionals i cal tenir en compte que com més gran sigui la mida de la imatge, més lenta anirà la visualització d'aquestes.

    - framerate → 10 (o 15 o 20)
    Al canviar el framerate aconseguirem variar el nombre d'imatges per segon. Com més gran sigui el nombre, més fluïda serà la seqüència d'imatges. No obstant, el nombre d'imatges que pugui transmetre per segon dependrà de la fluïdesa de la nostra connexió a Internet.

    - Auto-brightness → off
    Activat, l'auto-brightness regularia el contrast amb la lluminositat de la càmera tot i que al ser exposada a llums intenses com la solar o una bombeta encesa no es cal·libra molt bé. Per tant convé que el desactivem en cas que estigui en "on".

    - ffmpeg_output_movies → off
    Per defecte, motion ens crea vídeos sobre el que la cama enregistra i els desa. A nosaltres no ens convé que aquests vídeos es creïn ja que amb una cadena d'imatges en tidríem prou i a més, els vídeos ens ocuparien espai dins la memòria del nostre ordinador, cosa que tampoc ens interessa.

    - target_dir (nom del directori on desar imatges p.e. /home/pi/motion)
    En cas que en algun moment decidíssim enregistrar el conjunt d'imatges, ens caldrà un directori on desar-les. És per això que recomano que en creeu un i en aquest paràmetre hi escriviu l'adreça del directori. Remarcar que no es gravarà res a no ser que el paràmetre ffmpeg_output_movies estigui habilitat.

    - streamport (nombre del port de connexió que volguem p.e. 8081)
    Amb això definirem el port per el qual s'escoltaran les peticions d'imatges per la xarxa.

    - stream_motion → on
    El que això permet és que quan la càmera no detecti cap moviment, el flux d'imatges sigui d'1 fps i quan se'n detecti un, augmenti el nombre d'imatges per segon.

    - stream_maxrate → 10
    Quan la càmera detecti moviment, el flux d'imatges incrementarà fins el màxim donat aquí. Cal tenir en comte que, si se li assigna un valor molt elevat és possible que la connexió no sigui prou ràpida i es vegi entretallada la transmissió d'imatges.

    - stream_localhost → off
    Habilitarà la connexió des d'altres dispositius, com altres ordinadors o telèfons mòbils.

    - stream_auth_method → 1
    Amb això, el que aconseguirem és que quan intentem accedir a les imatges quan ens connectem a la xarxa, se'ns demani una contrasenya que nosaltres escollirem a continuació. En cas que no vulguem contrasenya podem escriure 0 però llavors, tothom amb l'adreça podrà accedir-hi.

    - steam_authentication → (nom d'usuari que vulguem):(contrasenya)
    Aquesta ordre només és útil si en l'anterior li hem dit que volem contrasenya. Primer inserirem el nom d'usuari que vulguem i seguidament de dos punts (:) la contrasenya que demanarà la pàgina.

    - output_pictures off
    Desactiva el fet d'utilitzar captures del vídeo per la seva presentació en cas que es desi. Com que a nosaltres no ens interessa, ho desactivarem.

    En cas que no trobem algun d'aquests paràmetres, fora del mode d'inserció (I), podem escriure /el nom del paràmetre que busquem . És una eina de cerca.
  6. Per acabar aquesta part del projecte, sortirem del mode edició amb la tecla Esc. i desarem els paràmetres utilitzant :wq (write and quit).
Amb això donem per conclosa aquesta part del projecte i podrem passar a la visualització de les imatges.

    Cap comentari:

    Publica un comentari a l'entrada