|
Inledning.
Beskrivninga hur man installerar och använder PiFace Digital I/O 2.
För att programmera PiFace används vanligen Python men här kommer C att användas.
|
|
|
Specifikationer.
2 Växlande reläer*
4 Tryckknappar
8 Digitala ingångar
- De åtta ingångarna känner av en anslutning till jord (som tillhandahålls på den nionde pinnen).
- De fyra knapparna är kopplade paralellt med de första fyra ingångarna.
Ingångarna är satta till 5V. Detta kan slås av så att ingångarna "flyter".
8 Open-Collector utgångar
8 Lysdioder
Grafisk emulator
Lätt att programmera i Python 3 och 2, Scratch och C
Stödjer avbrottshantering
40 pinnars GPIO-kontakt som passar Raspberry Pi B+ och Raspberry Pi 2 B.
*Reläerna kan användas för att switcha spänningar upp till 20V (Max) eller ström upp till 5A (Max)
|
|
|
PiFqace Digital I/O 2 Layout.
|
|
|
PiFace Digital I/O portar.
Hur man ansluter externa enheter till PiFace Digital I/O.
Ingångar.
Utgångar.
Reläer.
|
|
|
Installation.
Det första man måste göra är att uppdatera Raspberry Pi med de senaste:
sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
sudo rpi-update
sudo reboott
Nu ska SPI aktiveras:
sudo raspi-config
Gå till "Advanced Options" - "A6 SPI" - "<Yes>" - "<OK>" - "<Finish>"
sudo shutdown -Ph now
Koppla från alla anslutningar, koppla in PiFace Digital 2, anslut strömförsörjningen och logga in igen.
Nu är det dags att editera /etc/modprobe.d/raspi-blacklist.conf
sudo nano /etc/modprobe.d/raspi-blacklist.conf
Se till att det är en # (hash) i början på raden "blacklist spi-bcm2708". Avsluta med att spara filen.
Installera följande:
sudo apt-get update
wget http://pi.cs.man.ac.uk/download/install.txt | bash
sudo apt-get install python3-pifacedigitalio python-pifacedigitalio
sudo apt-get install python3-pifacedigital-emulator
sudo apt-get install python3-pifacedigital-scratch-handler
sudo reboot
Korrigering.
Jag behöver korrigera mina instruktioner för installation, framför allt när det gäller RPi 3.
Numera innehåller wiringPi resurser för att kompilera C-program, även headerfil för PiFace.
Ladda ner zip-filen från https://github.com/piface/pifacedigitalio
unzip pifacedigitalio-master.zip
Därpå kan det vara lämpligt och döpa om "directoryt" (pifacedigitalio-master) till Piface.
mv pifacedigitalio-master piface
Man måste fortsättningsvis ha med
-lwiringPiDev
vid kompilering. Exempel:
gcc -o blink-2 blink-2.c -lwiringPi -lwiringPiDev
Här finns Element 14's beskrivning av installation och testning. (Engelska)
Det är bra att installera Geany som är ett GUI som kan vara bra att använda vid utveckling.
sudo apt-get install geany.
|
|
|
Testning.
pfio modulen kommer som en del av PiFace pythonpaket. Se Installation.
Skapa följande python-program, led_show.py
Programmet körs med kommansdo:
sudo python3 led_show.py
|
|
|
PiFace Digital I/O 2 och C.
Kontrollera att wiringPi är installerat. Paketet finns här: http://wiringpi.com/download-and-install/
Installera wiringPi:
tar xfz wiringPi-98bcb20.tar.gz
cd wiringPi-98bcb20
./build
PiFace är ett tillbehör till Raspberry Pi som tillför 8 open-collector utgångar,
med 2 reläer och 8 ingångar (med 4 on-board tryckknappar). Dessa funktioner är hårdvarumässigt
fixerade så att bara read, write och inre pull-up kommandon är implementerade.
GPIO-kommandona för PiFace är hårdkodade från 200 till 207 både för att läsa ingångarna
och att skriva till utgångarna.
Om du vill läsa tillståndet på en utgång måste du läsa av från 208 till 215.
|
|
Ett Gtk-program.
Detta grafiska program tänder och släcker LED 7 i PiFace Digital I/O 2. Programmet kräver att man installerat behövliga gtk+program, se Grafist IDE, gtk
Programmet startas i ett terminalfönster med kommandot:
./piface om man står i samma mapp som programmet finns i.
Annars startas programmet med kommando:
/sökväg/piface
|
|
Fjärrmanövrera RPi via en hemsida.
Ett exempel på hur man kan fjärrmanövrera Raspberry Pi över internet via en hemsida.
Detta kräver att man först sätter upp en webbserver på den RPi man avser att fjärrmanövrera.
sudo apt-get install apache2
sudo apt-get install php5
sudo apt-get install php5-curl
sudo apt-get install php-xml-rpc
Först index.html, hemsidan.
Sedan piface-blink.php, skriptet som exekverar c-programmet piface-blink.c.
2019-10-21. Har behövt modifiera för Raspbian Buster.
Slutligen piface-blink, c-programmet som exekveras och gör jobbet i Raspberry Pi.
Skapa mappen /var/www/piface.
Placera filerna i /var/www/piface/
Se till att behörigheten på filerna är:
-rwxr-xr-x 1 pi pi 976 jun 11 2015 index.html
-rwxr-xr-x 1 pi pi 6259 mar 30 2015 piface-blink
Detta kan göras med kommando:
chmod +x index.html
chmod +x piface-blink
Anropa sedan hemsidan med URL/piface/ till exempel 10.0.0.38/piface/.
Resultat: Till vänster hemsidan före körning av RPi-programmet och till höger hemsidan efter körning. Genom att klicka på "Tillbaka"
kommer man tillbaka till den vänstra sidan.
Här finns en något mer utvecklad version, i pdf-format. PiFace-Blink-2.
|
|
PiFace Digital I/O Emulator.
Installation.
sudo apt-get install python3-pifacedigital-emulatot
Ifall man önskar använda Scratch för Piface-Digital:
sudo apt-get install python3-pifacedigital-scratch-handler
Starta emulatorn genom att i ett terminalfönster skriva:
pifacedigital-emulator
eller genom att klicka på iconen på skrivbordet.
Där på får man klicka på Enable och bocka för Digital Output varpå man sedan kan styra PiFace Digital genom
att klicka på knapparna på skärmen. Genom att trycka på de verkliga knapparna kan man se resultatet på skärmen.
PiFace Digital Emulator
|
|