De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

Raspberry Pi Les 5: Zaterdag 29 maart 2014 Wim Peeters

Verwante presentaties


Presentatie over: "Raspberry Pi Les 5: Zaterdag 29 maart 2014 Wim Peeters"— Transcript van de presentatie:

1 Raspberry Pi Les 5: Zaterdag 29 maart 2014 Wim Peeters

2 Raspberry-Pi

3 3 Programma Installatie Basis Linux en de commando's Pi als eenvoudig Linux servertje Raspberry PI als mediaspeler Aansturen en uitlezen motoren en LEDs Raspberry PI als fm zender

4 Raspberry-Pi4 Vorige Les Eenvoudige schakelingen  Knipper LED  LED Dimmen  (8 segmenten display)  Drukknop  Analoog signaal meten

5 Raspberry-Pi5 GPIO: connector P1

6 Raspberry-Pi6 LED en PI Pi: 5V pin 2 GND pin 6 3,3V elke IN/OUT 5V max 250mA 3,3V max 50mA Advies: 3-5mA

7 Raspberry-Pi7 GPIO programmeren sudo apt-get install python-dev sudo apt-get install python-rpi.gpio

8 Raspberry-Pi8 Python program: pinker.py #!/usr/bin/python # Led tss pin 18 en GND # Wim Peeters import RPi.GPIO as GPIO import time GPIO.setwarnings(False) GPIO.setmode(GPIO.BCM) GPIO.setup(18, GPIO.OUT) while (True): GPIO.output(18, True) time.sleep(0.5) GPIO.output(18, False) time.sleep(0.5)

9 Raspberry-Pi9 Drukknop Naar GPIO 1 (3,3V) Naar GPIO 23 → pin 16 Naar GND pin 6

10 Raspberry-Pi10 Meten van een spanning De PI heeft geen analoog digotaal convertor (ADC) Truuk: – Vervang Spannings meting door tijdsmeting

11 Raspberry-Pi11 Condensator: C Kan elektrische lading opslagen En vrijgeven. → maar dat duurt een tijd Symbool: Eenheid: Farad (F)

12 Raspberry-Pi12 Weerstand en Condensator in serie V in -V R -V C =0 V R = wet van Ohm V R =IR V C =V in (1-e -t/RC ) Met τ=RC

13 Raspberry-Pi13 Laden: opgeladen na 5RC t=RC

14 Raspberry-Pi14 Ontladen: na 5RC t=RC

15 Raspberry-Pi15 Met de PI Opgepast: kortsluiting! Pin1: 3,3V Pin6: GND GPIO 24 – (pin 18)

16 Raspberry-Pi16 In onze Website duwen?

17 Raspberry-Pi17 meet.py: eenmalige meting

18 Raspberry-Pi18 website-meeting.sh

19 Raspberry-Pi19 Uitvoeren + redirect naar webserver

20 Raspberry-Pi20 Vandaag Eenvoudige schakelingen –... – Temperatuur meten – Reageren op licht – Servo motor

21 Raspberry-Pi21 Temperatuur meten NTC-thermistor M891

22 Raspberry-Pi22 NTC: Negatieve Temperatuur Coëfficiënt (weerstand) Weerstand neemt toe met dalende Temperatuur T 25 = 10K NTC 10K

23 Raspberry-Pi23 Exponentieel verband ( ) Lineair benaderen temp = -(temp/20)+66 BENADERENDE RECHTE

24 Raspberry-Pi24

25 Raspberry-Pi25 Temperatuur

26 Raspberry-Pi26 Reageren op Licht Fotoweerstand THT Perkin Elmer VT 93 N2

27 Raspberry-Pi27 LDR: hoe meer licht hoe kleiner de weerstand In onze schakeling < 500: veel licht >1000: weining licht

28 Raspberry-Pi28

29 Raspberry-Pi29 Meting: 1000 donker

30 Raspberry-Pi30 Oefening Als donker: LED aan Als Licht: LED uit

31 Raspberry-Pi31 Oplossing GPIO.setup(18, GPIO.OUT) # LED op Pin6, GPIO 18 … zie vorige oefening.... # Hoofdprogramma while (True): licht = RCtime(24) # We meten op GPIO24 if licht < 500: print("Het is licht, zet de led uit") GPIO.output(18, False) # Led uit else: print("Het is donker, zet de led aan") GPIO.output(18, True) # Led aan

32 Raspberry-Pi32 Servo motor MC-1811 Technische specificaties Instelkoppel bij 4,8 V 15 Ncm Lagertype Glijlagers Stekkersysteem JR Servo-technologie Analoge servo Fabrikantnr. MC1811 Servo-type Micro-servo

33 Raspberry-Pi33 Breedte van de puls bepaalt positie

34 Raspberry-Pi34 Aansluiting Voeding: – 5V: Pin2 – GND: Pin 6 – Control: pin22 GPIO25 Weerstand 1K Control

35 Raspberry-Pi35 Via Duty cycle op 100Hz 100Hz: 10ms per period Duty=10% geeft pulse 1ms = hoek 0 Duty=20% geeft pulse 2ms = hoek 180 Duty=15% geeft pulse 1ms = hoek 90

36 Raspberry-Pi36 Run ~/LES5 $ sudo./servo.py Duty moet tussen 10 en 20 liggen, we starten op 15 Duty=10% geeft pulse 1ms = hoek 0 Duty=20% geeft pulse 2ms = hoek 180 Duty=15% geeft pulse 1ms = hoek 90 Duty: 10 Duty: 20 Duty: 15 Duty: 10

37 Raspberry-Pi37 #!/usr/bin/python # # pin1 3,3V --> 2K2,LDR 48k, pin18 (gpio24) --> GND (pin6) # pin2 5V --> Servo # pin6 (gpio18) --> R > LED --> GND (pin6) # pin22 (gpio25) --> R 1K --> signal servo # Wim Peeters import RPi.GPIO as GPIO import time GPIO.setwarnings(False) GPIO.setmode(GPIO.BCM) servopin = 25 GPIO.setup(servopin, GPIO.OUT) pwm = GPIO.PWM(servopin, 100) # pin en frequency, geeft 10ms/periode pwm.start(15) # start op 5% print "Duty moet tussen 10 en 20 liggen, we starten op 15" print " Duty=10% geeft pulse 1ms = hoek 0" print " Duty=20% geeft pulse 2ms = hoek 180" print " Duty=15% geeft pulse 1ms = hoek 90" while True: duty = int(input('Duty: ')) pwm.ChangeDutyCycle(duty) # Beweeg de Servo

38 Raspberry-Pi38 Oefening: servo sturen met LDR Zelfde hardware … vb output Het is licht, zet de led uit en servo naar links Het is donker, zet de led aan en servo naar rechts Het is licht, zet de led uit en servo naar links Het is donker, zet de led aan en servo naar rechts

39 Raspberry-Pi39 Oplossing …. zie vorige oefening # Hoofdprogramma while (True): licht = RCtime(24) # We meten op GPIO24 if licht < 500: print("Het is licht, zet de led uit en servo naar links") GPIO.output(18, False) # Led uit pwm.ChangeDutyCycle(10) # Beweeg de Servo naar links else: print("Het is donker, zet de led aan en servo naar rechts") GPIO.output(18, True) # Led aan pwm.ChangeDutyCycle(20) # Beweeg de Servo naar rechts 2ms puls

40 Raspberry-Pi40 Raspberry pi als FM zender Star Wars

41 Raspberry-Pi41 Pifm.tar.gz van icrobotics.ci.uk wget ~/LES5/pifm $ sudo./pifm sound.wav 103.2

42 Raspberry-Pi42 Pi grafisch  Remote: VNC server  sudo apt-get tightvncserver  sudo tightvncserver

43 Raspberry-Pi43

44 Raspberry-Pi44

45 Raspberry-Pi45 sudo apt-get install pistore

46 Raspberry-Pi46 PI als Mediacenter: RaspBMC

47 Raspberry-Pi47


Download ppt "Raspberry Pi Les 5: Zaterdag 29 maart 2014 Wim Peeters"

Verwante presentaties


Ads door Google