Inhoudsopgave:
- Stap 1: Materialen
- Stap 2: Bedrading
- Stap 3: Stel uw Ubidots-account en variabelen in
- Stap 4: Selecteer Raspberry Pi als uw nieuwe gegevensbron en vul het formulier in
- Stap 5: Klik nu op de nieuwe bron "Mijn Raspberry Pi"
- Stap 6: Voeg een nieuwe variabele toe met de naam "vrij of bezet" en vergeet niet de velden Naam en Eenheid in te vullen
- Stap 7: Noteer de id van uw variabele
- Stap 8: Uw Raspberry Pi coderen
- Stap 9: Een indicator maken in het Ubidots-dashboard
- Stap 10: Kies "Indicator" Widget en volg de stappen:
- Stap 11: Nu heb je je indicator
- Stap 12: Conclusie
2025 Auteur: John Day | [email protected]. Laatst gewijzigd: 2025-01-13 06:57
In dit project bouwen we een eenvoudige parkeersensor met behulp van een Raspberry Pi. Het blijkt dat ik elke ochtend met deze vraag geconfronteerd wordt: is de ENIGE parkeerplaats voor mijn kantoor al bezet? Want als het echt zo is, moet ik een blokje om en nog minstens 10 minuten gebruiken om te parkeren en naar kantoor te lopen.
Dus ik dacht dat het cool zou zijn om te weten of de plek vrij is of niet, voordat je er zelfs maar probeert te komen. Uiteindelijk was het resultaat een mooie widget die ik vanaf mijn Ipod of mobiele telefoon kon bekijken
Stap 1: Materialen
1. Raspberry Pi-model B:
2. USB WiFi-dongle
3. Bewegingssensor van Parallax
4. Drie vrouwelijke naar vrouwelijke draden
5. Ubidots-account - of - STEM-licentie
Stap 2: Bedrading
De bewegingssensor is zeer eenvoudig te installeren omdat deze slechts drie pinnen heeft: GND, VCC (+5v) en OUT (digitaal signaal "1" of "0"). Als er beweging omheen is, zal het een "1" uitvoeren, als dat niet het geval is, een "0".
De aansluiting zie je in onderstaand schema, de kabels worden direct op de GPIO pinnen van de Raspberry Pi gestoken. Als je meer informatie nodig hebt over GPIO-pinnen, kun je deze gids bezoeken op makezine.com; het is een goede bron om vertrouwd te raken met de Raspberry Pi-pinnen.
Stap 3: Stel uw Ubidots-account en variabelen in
Als je nieuw bent bij Ubidots, maak dan hier een account aan.
Navigeer naar het tabblad "Bronnen" en voeg een nieuwe bron toe
Stap 4: Selecteer Raspberry Pi als uw nieuwe gegevensbron en vul het formulier in
Stap 5: Klik nu op de nieuwe bron "Mijn Raspberry Pi"
Stap 6: Voeg een nieuwe variabele toe met de naam "vrij of bezet" en vergeet niet de velden Naam en Eenheid in te vullen
Stap 7: Noteer de id van uw variabele
Noteer uw API-sleutel in "Mijn profiel -- API-sleutel"
Stap 8: Uw Raspberry Pi coderen
Je zou je Raspberry Pi al moeten hebben geconfigureerd en er internettoegang vanaf hebben. Zo niet, volg dan deze handleiding of bekijk deze blogpost over het instellen van wifi.
Als je klaar bent, ga je naar je Raspberry Pi via een terminal (LxTerminal als je je Pi rechtstreeks via de GUI opent), navigeer je naar een map waar je dit project wilt opslaan en maak je een nieuw bestand met de naam "presence.py"
$ sudo nano presence.py
Plak nu de volgende code:
importeer RPi. GPIO als GPIO ##GPIO-bibliotheekvan ubidots importeer ApiClient ##Ubidots-bibliotheek importtijd ##tijdbibliotheek voor vertragingen GPIO.setmode(GPIO. BCM)##stel BCM in als nummeringssysteem voor ingangen GPIO.setup(7, GPIO. IN)## GPIO7 declareren als invoer voor de sensor
proberen:
api=ApiClient("75617caf2933588b7fd0da531155d16035138535")##put your own apikey people= api.get_variable("53b9f8ff76254274effbbace")##put je eigen variabele-id behalve: print "can can connect"##als dit gebeurt, controleer dan je internetverbinding): presence=GPIO.input(7)#)# de waarde van de sensor opslaan if(presence==0):##als presence nul is, betekent dit dat de andere auto er nog is:(people.save_value({'value ':presence})##waarde verzenden naar ubidots time.sleep(1)##controleer elke 5 seconden of de andere auto beweegt print "cero" if(presence): people.save_value({'value':presence})# #de andere auto is vertrokken dus is nu leeg:) time.sleep(1) print "uno" GPIO.cleanup()##reset de status van de GPIO-pinnen
Voer uw programma uit:
$ sudo python presence.py
Stap 9: Een indicator maken in het Ubidots-dashboard
Nu we de live gegevens van het apparaat krijgen, moeten we een aangepaste widget maken die ons vertelt of de parkeerplaats bezet is of niet. Klik op het dashboardtabblad en voeg vervolgens een nieuwe widget toe:
Stap 10: Kies "Indicator" Widget en volg de stappen:
Stap 11: Nu heb je je indicator
Super goed! nu zou je een live-widget moeten zien die de staat van de parkeerplaats aangeeft. Trouwens, je kunt deze widget in elke web- of mobiele app insluiten:
Stap 12: Conclusie
Dat is alles voor dit project! We hebben geleerd hoe we een bewegingssensor op de Ubidots-cloud kunnen aansluiten met behulp van een Raspberry Pi en de gegevens ervan in een live-widget kunnen weergeven. Het project kan worden verbeterd door een aanwezigheidssensor te gebruiken en niet bepaald een bewegingssensor (die teruggaat naar "0" nadat de beweging is verdwenen). Het kan ook worden uitgebreid door sms- of e-mailwaarschuwingen in te stellen, die kunnen worden aangemaakt op het tabblad "Evenementen" in uw Ubidots-account.
Heb je een vraag? voel je vrij om hieronder commentaar te geven of een ticket achter te laten op onze ondersteuningspagina.
Hier is nog een cool project met Raspberry Pi en een bewegingssensor: