Мазмуну:

Raspberry Pi GPIO схемалары: ADCсиз LDR аналогдук сенсорун колдонуу (санариптик конверторго аналог): 4 кадам
Raspberry Pi GPIO схемалары: ADCсиз LDR аналогдук сенсорун колдонуу (санариптик конверторго аналог): 4 кадам

Video: Raspberry Pi GPIO схемалары: ADCсиз LDR аналогдук сенсорун колдонуу (санариптик конверторго аналог): 4 кадам

Video: Raspberry Pi GPIO схемалары: ADCсиз LDR аналогдук сенсорун колдонуу (санариптик конверторго аналог): 4 кадам
Video: Аналоговый вход для Raspberry PI используя ADS1115 2024, Ноябрь
Anonim
Raspberry Pi GPIO схемалары: ADC жок LDR аналогдук сенсорун колдонуу (санариптик конверторго аналог)
Raspberry Pi GPIO схемалары: ADC жок LDR аналогдук сенсорун колдонуу (санариптик конверторго аналог)

Мурунку көрсөтмөлөрүбүздө, биз сизге Raspberry Piнин GPIO казыктарын LED менен өчүргүчтөргө кантип байланыштыра алаарыңызды жана GPIO төөнөгүчтөрүнүн бийик же төмөн болушун көрсөткөнбүз. Бирок сиз аналогдук сенсор менен Raspberry Pi колдонууну кааласаңызчы?

Эгерде биз Raspberry Pi менен аналогдук сенсорлорду колдонууну кааласак, анда сенсордун каршылыгын өлчөй алышыбыз керек. Arduinoдон айырмаланып, Raspberry Piнин GPIO казыктары каршылыкты өлчөй албайт жана аларга берилген чыңалуу белгилүү бир чыңалуудан (болжол менен 2 вольттон) жогору болгондо гана сезе алат. Бул маселени чечүү үчүн, аналогду санариптик конвертерге (ADC) колдонсоңуз болот, же анын ордуна салыштырмалуу арзан конденсаторду колдонсоңуз болот.

Бул Нускоочу бул кантип жасалышы мүмкүн экенин көрсөтөт.

1 -кадам: Сизге эмне керек

Сизге эмне керек болот
Сизге эмне керек болот
Сизге эмне керек болот
Сизге эмне керек болот
Сизге эмне керек болот
Сизге эмне керек болот
Сизге эмне керек болот
Сизге эмне керек болот

- Raspbian менен RaspberryPi мурунтан эле орнотулган. Сиз ошондой эле мониторго, чычканга жана баскычтопко же алыскы иштакта аркылуу Piге кире алышыңыз керек. Сиз Raspberry Piнин каалаган моделин колдоно аласыз. Эгерде сизде Pi Zero моделдеринин бири бар болсо, анда GPIO портуна кээ бир баштыктарды сайгыңыз келиши мүмкүн.

- Жарыкка көз каранды резистор (LDR же Photoresistor катары дагы белгилүү)

- 1 UF керамикалык конденсатор

- Solderless прототиптештирүү тактасы

- Кээ бир Эркектен Аялга секирүүчү зымдар

2 -кадам: Районуңузду куруңуз

Сиздин Районуңузду куруңуз
Сиздин Районуңузду куруңуз
Сиздин Районуңузду куруңуз
Сиздин Районуңузду куруңуз

Жогорудагы схеманы нан тактаңызга куруңуз, компоненттердин эч бири тийбей турганын текшериңиз. Жарыкка көз каранды резистор менен керамикалык конденсатордун полярдуулугу жок, бул терс жана оң токту коргошунга туташтырууга болот дегенди билдирет. Демек, бул компоненттер сиздин схемаңызга кандайча туташып калгандыгы жөнүндө тынчсыздануунун кажети жок.

Тизмеңизди текшергенден кийин, жогорудагы схемага ылайык Raspberry Piнин GPIO казыктарына туташтыргыч кабелдерди туташтырыңыз.

3 -кадам: Жарыкка көз каранды резисторду окуу үчүн Python скриптин түзүңүз

Жарыкка көз каранды резисторду окуу үчүн Python скриптин түзүңүз
Жарыкка көз каранды резисторду окуу үчүн Python скриптин түзүңүз

Эми биз Python аркылуу LDRдин каршылыгын окуп, көрсөтө турган кыска сценарий жазабыз.

Сиздин Raspberry Pi'де IDLE ачыңыз (Меню> Программалоо> Python 2 (IDLE)). Жаңы долбоорду ачыңыз Файл> Жаңы Файлга өтүңүз. Андан кийин төмөнкү кодду териңиз (же көчүрүп чаптаңыз):

RPi. GPIO импорттоо GPIOimport timempin = 17 tpin = 27 GPIO.setmode (GPIO. BCM) cap = 0.000001 adj = 2.130620985i = 0 t = 0 True: GPIO.setup (mpin, GPIO. OUT) GPIO.setup (tpin), GPIO. OUT) GPIO.output (mpin, False) GPIO.output (tpin, False) time.sleep (0.2) GPIO.setup (mpin, GPIO. IN) time.sleep (0.2) GPIO.output (tpin, True)) башталыш убактысы = time.time () endtime = time.time () while (GPIO.input (mpin) == GPIO. LOW): endtime = time.time () өлчөөчү каршылык = endtime-starttime res = (өлчөөчү каршылык/капкак)* adj i = i+1 t = t+res if i == 10: t = t/i print (t) i = 0 t = 0

Долбооруңузду lightsensor.py (File> As Save) катары Документтер папкаңызга сактаңыз.

Эми Терминалды ачыңыз (Меню> Аксессуарлар> Терминал) жана төмөнкү буйрукту териңиз:

python lightsensor.py

Raspberry Pi бир нече жолу фоторезистордун каршылыгын көрсөтөт. Манжаңызды фоторезистордун үстүнө койсоңуз, каршылык күчөйт. Фоторезисторго жаркыраган жарык чачсаңыз, каршылык азаят. Бул программанын иштешин CTRL+Z басуу менен токтото аласыз.

4 -кадам: Бул кантип иштейт

Конденсатор акырындык менен заряддалып жатканда, чынжыр аркылуу GPIO пинине өткөн чыңалуу көтөрүлөт. Конденсатор белгилүү бир чекитке чейин заряддалгандан кийин, анын чыңалуусу 2 вольттон жогору көтөрүлөт жана Raspberry Pi GPIO pin 13 БИЙИК экенин сезет.

Эгерде сенсордун каршылыгы жогоруласа, конденсатор жайыраак заряддалат жана схема 2 вольтко жетүү үчүн көбүрөөк убакыт талап кылынат.

Жогорудагы скрипт негизинен пин 13 үчүн Жогорку бурулуш үчүн канча убакыт кетерин жана андан кийин бул өлчөөнү Фоторезистордун каршылыгын эсептөө үчүн колдонот.

Сунушталууда: