Мазмуну:
- 1 -кадам: Сизге эмне керек
- 2 -кадам: Районуңузду куруңуз
- 3 -кадам: Жарыкка көз каранды резисторду окуу үчүн Python скриптин түзүңүз
- 4 -кадам: Бул кантип иштейт
Video: Raspberry Pi GPIO схемалары: ADCсиз LDR аналогдук сенсорун колдонуу (санариптик конверторго аналог): 4 кадам
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:41
Мурунку көрсөтмөлөрүбүздө, биз сизге 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 аркылуу 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 үчүн Жогорку бурулуш үчүн канча убакыт кетерин жана андан кийин бул өлчөөнү Фоторезистордун каршылыгын эсептөө үчүн колдонот.
Сунушталууда:
Arduino аркылуу Led Strip менен Аналогдук Саатты жана Санариптик Саатты Кантип Жасоо керек: 3 кадам
Arduino аркылуу Led Strip менен аналогдук саат жана санариптик саат кантип жасалат: Бүгүн биз аналогдук саат жасайбыз & Санарип саат Led Strip жана MAX7219 Dot модулу менен Arduino.Ал жергиликтүү убакыт алкагы менен убакытты оңдойт. Аналогдук саат узунураак LED тилкесин колдоно алат, ошондуктан аны көркөм өнөргө айлантуу үчүн дубалга илип коюуга болот
Бир аналог пинди колдонуу менен бир нече аналогдук баалуулуктарды кантип окуу керек: 6 кадам (сүрөттөр менен)
Бир аналог пинди колдонуу менен бир нече аналогдук баалуулуктарды кантип окуу керек: Бул үйрөткүчтө мен сизге бир эле аналогдук кирүүчү пинди колдонуу менен бир нече аналогдук баалуулуктарды кантип окууну көрсөтөм
Үйрөткүч: US-016 аналогдук УЗИ аралык сенсорун кантип колдонсо болот: 3 кадам
Үйрөткүч: US-016 аналогдук УЗИ аралык сенсорун кантип колдонуу керек Ардуино UNO менен: Сүрөттөмө: US-016 УЗИ баштапкы модулу 2 см ~ 3 м эмес өлчөө мүмкүнчүлүктөрүнө, 5 вольттогу чыңалууга, 3,8мА иштеп жаткан агымга, аналогдук чыгыш чыңалуусун колдоого, туруктуу жана ишенимдүү. Бул модуль колдонмого жараша ар кандай болушу мүмкүн
Колдонулган коопсуздук сенсорун жана аналогдук микросхеманы колдонуу менен гараждагы тескери токтоочу жардам: 5 кадам
Колдонулуучу коопсуздук сенсорун жана аналогдук микросхеманы колдонуу менен гараждагы тескери токтоочу жардам: Мен аялзатына нааразы болгонум үчүн адамзат тарыхында көптөгөн ойлоп табуулар болгон деп шектенем. Кир жуугуч машина жана муздаткыч албетте жашоого жарамдуу талапкерлердей көрүнөт. Менин кичинекей "ойлоп табуум" Бул Нускамада сүрөттөлгөн электрондук
Кантип күлкүлүү арзан аналогдук басым сенсорун жасоо керек: 4 кадам (сүрөттөр менен)
Кантип күлкүлүү арзан аналогдук басым сенсорун жасаса болот: жөнөкөй аналогдук басым сенсоруна өтө чоң суммаларды төлөөдөн чарчадыңызбы? Бул жерде укмуштай арзан аналогдук басым сенсорун жасоонун оңой жолу. Бул басым сенсору тактыкты өлчөө жагынан өтө так болбойт