Dans cet article, je vais vous montrer comment orienter une camera alors que vous vous trouver à 5km de la camera, voir plus loin.
Cet article n’est pas terminé mais sert comme aide-mémoire
Prérequis
Avoir configuré son Raspberry selon l’article
- Faire des sauvegardes avec Raspberry
- Notion en Python (même si je vous donnerai le code)
- Avoir pris connaissance des définitions des pins

Théorie
Je me m’attarderais pas dans la théorie. Je vous invite donc à lire cet article (en anglais) sur les DutyCycle ou celui-ci (en français)
Quelques passages:
We can now start the pwm sequence by giving a command to specify the DutyCycle of the signal. Before we do this, we need to talk a little bit about how servos work. A typical servo wants to see a frequency of 50 Hz on the control line. The position it moves to depends on the pulse width of the signal. Most servos behave roughly as such, but you will need to tweak these numbers for your particular servo. Typically, the servo will go to the full left position when it sees a pulse width of 1 millisecond, it will go the middle position when it sees a pulse width of 1.5 millisecond, and it will go to the full right position when it sees a pulse width of 2 millisecond. Note however, that on the Raspberry Pi we do not specify a pulse width, but we specify a DutyCycle. So, we can use the following relationship:
DutyCycle =PulseWidth/Period
[…]
En général, le signal est envoyé toutes les 20 ms (donc la fréquence est de 50 Hz). Si le signal demeure haut pendant 1 ms (ce qui correspond à un rapport cyclique de 5 %), le servomoteur se place à sa position minimale, s’il demeure haut pendant 1,5 ms (rapport cyclique de 7,5%), il se place à sa position médiane, et s’il demeure haut pendant 2 ms (rapport cyclique de 10 %), il se place à sa position maximale.
Les valeurs exactes varient d’un servomoteur à l’autre, toutefois, et le mieux est d’effectuer quelques tests avec celui que vous utiliserez, afin de connaître les rapports cycliques nécessaires pour lui faire occuper ses positions extrêmes
Matériel
Un Raspberry Zero W https://www.adafruit.com/product/3400
avec une alimentation 5V

Header male https://www.adafruit.com/product/2822 que vous aurez soudé au Raspberry Zero

Un petit « Pan tilt kit » https://www.adafruit.com/product/1967 et deux condensateurs de 1000µF

Accessoirement, un châssis https://www.adafruit.com/product/3216
Références:
http://electroniqueamateur.blogspot.ch/2015/11/controler-un-servomoteur-en-python-avec.html
http://www.toptechboy.com/raspberry-pi/raspberry-pi-lesson-28-controlling-a-servo-on-raspberry-pi-with-python/
https://circuitdigest.com/article/servo-motor-basics
https://circuitdigest.com/microcontroller-projects/raspberry-pi-servo-motor-control
https://learn.sparkfun.com/tutorials/raspberry-gpio/python-rpigpio-api http://www.instructables.com/id/Servo-Motor-Control-With-Raspberry-Pi/
http://deusyss.developpez.com/tutoriels/RaspberryPi/PythonEtLeGpio/
http://www.raspberrypi-france.fr/installer-camera-videosurveillance/
https://www.raspberrypi.org/documentation/usage/camera/python/README.md
Web controll : https://tutorials-raspberrypi.com/setup-raspberry-pi-node-js-webserver-control-gpios/
Préparation
Activation du SPI.
Ouvrez un terminal et tapez la commande suivante
sudo raspi-config
Cliquez sur 5 Interfacing Options
Puis sur P4 SPI et activez le (enable)
Connexions
La numérotation des pin du Raspberry sont les suivantes. La pin 1, se trouve à côté de la carte SD. La pin 2 se trouve à côté de la pin 1 et la pin 3 se trouve dessous la pin 1, et ainsi de suite.
Pour le servo 1 y
fils rouge => pin 1
fils brun => pin 9
fils jaune => pin 18
Pour le servo 2 x
fils rouge => pin 17
fils brun => pin 25
fils jaune => pin 16
Il faut encore mettre un condensateur de 1000µF entre le fils rouge et brun, pour les deux servos.
Configuration de Dydns
sudo apt-get install ddclient sudo apt-get install libio-socket-ssl-perl sudo ddclient -query sudo ddclient -debug -verbose -noquiet sudo systemctl start/stop/status ddclient
Référence: https://hallard.me/adafruit-oled-display-driver-for-pi/
Puis activer l’I2C
sudo raspi-config
sélectionner 5 Interface Options puis P5 I2C
Installer les packages suivants
sudo apt-get install libi2c-dev i2c-tools sudo mkdir /home/pierrot/Soft/oled-ssd1306 cd /home/pierrot/Soft/oled-ssd1306 sudo git clone https://github.com/adafruit/Adafruit_Python_SSD1306.git cd oled-ssd1206/
Scripts
Nous allons créer un petit script qui ca commander l’orientation de la camera. Pour cela, ouvrez votre terminal et taper la commande suivante
sudo apt-get install vim # Pour installer VIM, si ce n'est pas fait cd sudo vi camera.py
tapez sur la touche i pour écrire ce code
from time import pprint import sys import RPI.GPIO as GPIO print("Hello Word")
A suivre …