Ceci est un programme de test pour contrôler à distance le GPIO du raspberry pi. Il était nécessaire de contrôler GPIO à distance pour diverses raisons, je l'ai donc réglé à la hâte.
Pour plus d'informations, veuillez visiter ici.
shell
$ cat /etc/systemd/system/multi-user.target.wants/pigpiod.service
[Unit]
Description=Daemon required to control GPIO pins via pigpio
[Service]
ExecStart=/usr/bin/pigpiod -l
ExecStop=/bin/systemctl kill pigpiod
Type=forking
[Install]
WantedBy=multi-user.target
Commencez.
shell
$ sudo systemctl enable pigpiod
$ sudo systemctl start pigpiod
$ sudo systemctl status pigpiod
● pigpiod.service - Daemon required to control GPIO pins via pigpio
Loaded: loaded (/lib/systemd/system/pigpiod.service; enabled; vendor preset: enabled)
Drop-In: /etc/systemd/system/pigpiod.service.d
└─public.conf
Active: active (running) since Tue 2020-04-28 20:59:18 JST; 1h 16min ago
Process: 3643 ExecStart=/usr/bin/pigpiod (code=exited, status=0/SUCCESS)
Main PID: 3644 (pigpiod)
Tasks: 4 (limit: 4915)
Memory: 568.0K
CGroup: /system.slice/pigpiod.service
└─3644 /usr/bin/pigpiod
28 avril 20:59:18 raspi4 systemd[1]: Starting Daemon required to control GPIO pins via pigpio...
28 avril 20:59:18 raspi4 systemd[1]: Started Daemon required to control GPIO pins via pigpio.
Installez les éléments nécessaires sur le PC distant. Dans mon cas, c'est Raspberry Pi 3, j'ai donc installé pigpio.
Ceci est un programme de test.
python
import time
import pigpio
PI = pigpio.pi("Adresse IP distante", 8888)
PI.set_mode(23, pigpio.OUTPUT)
PI.set_mode(24, pigpio.OUTPUT)
PI.set_mode(25, pigpio.OUTPUT)
try:
while True:
PI.write(23, 1)
time.sleep(0.1)
PI.write(23, 0)
PI.write(24, 1)
time.sleep(0.1)
PI.write(24, 0)
PI.write(25, 1)
time.sleep(0.1)
PI.write(25, 0)
except KeyboardInterrupt:
pass
PI.set_mode(23, pigpio.INPUT)
PI.set_mode(24, pigpio.INPUT)
PI.set_mode(25, pigpio.INPUT)
PI.stop()
GPIO23,24,25 a 3 LED. Peu importe si vous l'exécutez à partir d'un hôte local, mais si vous l'exécutez à distance, il peut être affecté par la vitesse de la ligne, mais ce sera lent.
Cette fois, il n'y a pas de problème car il s'agit du contrôle du relais pour allumer / éteindre l'alimentation 100V, et il n'est pas nécessaire de commuter à grande vitesse.
Recommended Posts