Мазмұны:

Python және сіздің Raspberry Pi GPIO түйреуіштерімен бірнеше жарықдиодты басқару: 4 қадам (суреттермен)
Python және сіздің Raspberry Pi GPIO түйреуіштерімен бірнеше жарықдиодты басқару: 4 қадам (суреттермен)

Бейне: Python және сіздің Raspberry Pi GPIO түйреуіштерімен бірнеше жарықдиодты басқару: 4 қадам (суреттермен)

Бейне: Python және сіздің Raspberry Pi GPIO түйреуіштерімен бірнеше жарықдиодты басқару: 4 қадам (суреттермен)
Бейне: ESP32 Turorial 1 - Introduction to SunFounder's ESP32 IoT Learnig kit Software and Arduino IDE 2024, Шілде
Anonim
Python және сіздің Raspberry Pi GPIO түйреуіштерімен бірнеше жарықдиодты басқару
Python және сіздің Raspberry Pi GPIO түйреуіштерімен бірнеше жарықдиодты басқару

Бұл нұсқаулық RaspberryPi -де 4 светодиодты қосу үшін бірнеше GPIO түйреуіштерін қалай басқаруға болатынын көрсетеді. Ол сізді Python -дағы параметрлер мен шартты мәлімдемелермен таныстырады.

Жарықдиодты басқару үшін сіздің Raspberry Pi GPIO түйреуіштерін пайдалану жөніндегі алдыңғы нұсқаулық GPIO.output пәрменін қолдана отырып, бір жарық диодты қалай қосуға және өшіруге болатынын көрсетеді. Бұл нұсқаулық сіздің схемаңызды бақылауды алуды үйрету үшін осы білімге негізделген.

1 -қадам: Сізге не қажет

Сізге не қажет болады
Сізге не қажет болады
Сізге не қажет болады
Сізге не қажет болады

- Raspbian орнатылған RaspberryPi. Сондай -ақ, мониторға, тінтуірге және пернетақтаның көмегімен немесе қашықтағы жұмыс үстелі арқылы Pi -ге кіру қажет. Сіз Raspberry Pi кез келген моделін пайдалана аласыз. Егер сізде Pi Zero модельдерінің біреуі болса, GPIO портына бірнеше түйреуіштерді дәнекерлеу қажет болуы мүмкін.

- Қызыл, көк, сары және жасыл жарық диодтары

- прототиптеудің дәнекерленген тақтасы

- 4х330 Ом резисторлар

- Кейбір ерлер мен әйелдерге арналған секіргіш сымдар

2 -қадам: Схеманы құрыңыз

Сіздің шеңберіңізді құрыңыз
Сіздің шеңберіңізді құрыңыз
Сіздің шеңберіңізді құрыңыз
Сіздің шеңберіңізді құрыңыз

Жоғарыда көрсетілген тізбекті өзіңіздің тақтаңызға орнатыңыз, оның құрамдас бөліктерінің ешқайсысы жанаспайтындығына және жарық диодтардың дұрыс жалғанғанына көз жеткізіңіз.

Светодиодтардағы оң және теріс сымдарды (полярлықты) қалай анықтауға болады? Егер сіз жарық диодты мұқият қарасаңыз, онда түсті корпустың ішінде екі кішкене металл бөлігі бар екенін көресіз. Олар анод және катод деп аталады. Катод екеуінің ішіндегі ең үлкені болып табылады, сонымен қатар теріс светодиодтарға қосылған.

Сіз тізбекті тексергеннен кейін, жоғарыдағы схемаға сәйкес Raspberry Pi GPIO түйреуіштеріне қосқыш кабельдерді қосыңыз.

3 -қадам: Жарық диодтарын бақылау және тексеру үшін сценарий жасаңыз

Жарықдиодты бақылау және тексеру үшін сценарий жасаңыз
Жарықдиодты бақылау және тексеру үшін сценарий жасаңыз

Raspberry Pi -де IDLE ашыңыз (Мәзір> Бағдарламалау> Python 2 (IDLE)).

Жаңа жобаны ашыңыз, Файл> Жаңа файл тармағына өтіңіз. Содан кейін келесі кодты теріңіз (немесе көшіріңіз және қойыңыз):

GPO ретінде RPi. GPIO импорттау

импорт уақыты GPIO.setmode (GPIO. BCM) GPIO.setup (17, GPIO. OUT) GPIO.setup (18, GPIO. OUT) GPIO.setup (22, GPIO. OUT) GPIO.setup (23, GPIO. OUT) GPIO. шығыс (17, шын) уақыт.ұйықтау (3) GPIO. шығыс (17, жалған) уақыт.ұйықтау (1) GPIO. шығыс (18, шын) уақыт.ұйық (3) GPIO. шығыс (18, жалған) time.sleep (1) GPIO.output (22, True) time.sleep (3) GPIO.output (22, False) time.sleep (1) GPIO.output (23, True) time.sleep (3) GPIO. шығару (23, жалған)

Жобаңызды Raspberry Pis құжаттары қалтасында multilights.py (Файл> Басқаша сақтау) ретінде сақтаңыз.

Raspberry Pi -де Терминалды ашыңыз (Мәзір> Аксессуарлар> Терминал) және төмендегілерді теру арқылы Құжаттар қалтасына өтіңіз:

cd/home/pi/Құжаттар

Енді сіз жаңа сценарийді келесі әрекеттерді енгізу арқылы іске қоса аласыз:

python multilights.py

Жарықтар оны кезекпен қосады және өшіреді. Жоғарыдағы сценарий әр қадамның арасында үзіліс жасау үшін time.sleep пәрменін қолданады, әр жарық 3 секундқа қосылады және келесі шамды қоспас бұрын 1 секунд күтеді.

4 -қадам: Параметрлер мен шартты мәлімдемелерді қолдану арқылы икемділікті қосу

Параметрлер мен шартты мәлімдемелерді қолдану арқылы біз жоғарыдағы сценарийді әлдеқайда икемді ете аламыз.

Параметр сценарийде кейінірек қолдануға болатын мәнді сақтауға мүмкіндік береді. Мәндердің ең көп тараған түрлері - бұл жолдар (мәтін), бүтін сандар (бүтін сандар) немесе қалқымалы (ондық сандар).

Шартты мәлімдеме белгілі бір шарттың орындалуын тексеру арқылы код сегментінің орындалуы немесе орындалмайтынын анықтайды. Шарт сонымен қатар параметрлерді қамтуы мүмкін.

Raspberry Pi құрылғысында IDLE ашыңыз және жаңа жобаны ашыңыз (Файл> Жаңа файл). Содан кейін келесіні теріңіз. Қойынды пернесін пайдалану арқылы барлық шегіністердің (қойындылардың) енгізілуін қадағалаңыз:

GPO ретінде RPi. GPIO импорттау

sys импорттау уақытынан импорты argv whichled = argv [1] ledaction = argv [2] LEDa = 17 LEDb = 18 LEDc = 22 LEDd = 23 GPIO.setmode (GPIO. BCM) GPIO.setup (LEDa, GPIO. OUT) GPIO. setmode (GPIO. BCM) GPIO.setup (LEDb, GPIO. OUT) GPIO.setmode (GPIO. BCM) GPIO.setup (LEDc, GPIO. OUT) GPIO.setmode (GPIO. BCM) GPIO.setup (LED, GPIO. OUT) егер ledaction == «off»: ifled == «a» болса: GPIO.output (LEDa, False) if ifled == «b»: GPIO.output (LEDb, False) ifled if == «c»: GPIO.output (LEDc, False), егер == «d» болса: GPIO.output (LEDd, False), егер == «all» күйдірсе: GPIO.output (LEDa, False) GPIO.output (LEDb, False) GPIO. шығару (LEDc, False) GPIO.output (LEDd, False) егер ledaction == «on» болса: егер == «a» болса: GPIO. шығысы (LEDa, True), егер == «b» болса: GPIO. шығысы (LEDb, True) егер жалған == «c» болса: GPIO. шығысы (LEDc, True), егер == «d» күйінде болса: GPIO. шығысы (LEDd, True), егер == «барлығы» болса: GPIO. шығысы (LEDa, True) GPIO.output (LEDb, True) GPIO.output (LEDc, True) GPIO.output (LEDd, True)

Құжаттар қалтасында жобаңызды controllight.py (Файл> Басқаша сақтау) ретінде сақтаңыз. Енді Терминалды ашыңыз (Мәзір> Аксессуарлар> Терминал) және келесі пәрменді теріңіз:

python controllight.py b қосулы

Екінші жарық диоды қосылуы керек. Енді келесіні теріңіз:

python controllight.py b өшірулі

Екінші жарық диоды өшуі керек.

5, 6, 7 және 8 -жолдарда біз LEDa, LEDb, LEDc және LEDd параметрлерін құрамыз, олар үшін біз қандай светодиоды қосылған GPIO түйреуішін сақтаймыз. Бұл сценарийге елеулі өзгерістер енгізбестен балама GPIO түйреуіштерін пайдалануға мүмкіндік береді.

Мысалы, егер біз бірінші светодиодты Pin 3 -ке (GPIO 2) қосатын болсақ, онда біз 5 -жолды келесіге өзгертуіміз керек:

LEDa = 2

4 -жолда controllight.py -ден кейін терілген мәндер (c) және жарық диапазоны (қосулы) параметрлерінде сақталады. Содан кейін сценарий осы параметрлерді қолданады, олар бірқатар Шартты мәлімдемелермен бірге қандай жарықдиодты басқару керектігін және оны қосу немесе өшіруді шешеді.

16 -жол (егер ledaction == «on»:) болса - шартты мәлімдеме. Осы мәлімдеменің шегініс сызықтары оператордың шарты орындалған жағдайда ғана орындалады. Бұл сценарийде шарты - ledaction мәтінді қамтиды.

Сценарийдің басқа шартты мәлімдемелерін оқи отырып, Терминалда келесі пәрменді тергенде не болатынын болжай аласыз ба?

python controllight.py барлығы қосулы

Неліктен оны жібермеске және төмендегі түсініктемелер бөлімінде өз жауабыңды жазбасқа.

Ұсынылған: