Мазмуну:

Pi үчүн автоматтык муздатуу күйөрманы: 4 кадам (сүрөттөр менен)
Pi үчүн автоматтык муздатуу күйөрманы: 4 кадам (сүрөттөр менен)

Video: Pi үчүн автоматтык муздатуу күйөрманы: 4 кадам (сүрөттөр менен)

Video: Pi үчүн автоматтык муздатуу күйөрманы: 4 кадам (сүрөттөр менен)
Video: Кантип Windows 10 орнотуу керек. Башынан аягына чейин. 2024, Ноябрь
Anonim
Pi үчүн автоматтык муздатуучу желдеткич
Pi үчүн автоматтык муздатуучу желдеткич

Сүрөттөмө кайра англисче (Кошмо Штаттар) тилине которулсун Которуу A simple design to control a mini 5v fan with python, without need of a breadboard, tranzistors etc. Мен сунуштаган 2 каналдык реле бар болчу, анткени анын баасы дээрлик бирдей жана сиз кошумча контроллер аласыз. Ар бир саатта аткарылган скрипт пи температурасын текшерет жана каалаган температурага жеткенге чейин желдеткичти күйгүзүп/өчүрөт.

Киришүү Жай жакындап калгандыктан, менин экинчи пиим менин даамым үчүн бир аз ысып жатат, ошондуктан мен аны кээде муздатып салгым келди. Албетте, менде 24/7 иштеген желдеткич болушу мүмкүн, бирок а) бул панельди талап кылат, жана кээ бир резисторлор ж. дүйнө дагы кызыктуу:) жана в) анын чындыгында арзан… сизге болгону кабелдер жана реле гана керек.

Ырахат алыңыз, жана комментарий жазуудан тартынбаңыз!

1 -кадам: Керектүү материалдар

Керектүү материалдар
Керектүү материалдар
Керектүү материалдар
Керектүү материалдар
Керектүү материалдар
Керектүү материалдар
Керектүү материалдар
Керектүү материалдар

- crontab / python сиздин пиңизге орнотулган - Корпусу бар малина пи - 5v мини желдеткич (шилтеме) - 2 каналдын релеси (шилтеме) - Ургаачыдан аялга чейинки кабелдердин жубайы (шилтеме). Менде болгону 1 болчу, ошондуктан мен компьютер үчүн эски DVD аудио кабелин жана релелик контролер пин үчүн кошумча f2f кабелин колдондум.

Эскертүү: Менин малинамдын үстүндөгү тешик адаттагыдан бир аз кичине болгондуктан, аны кененирээк кылуу үчүн бургулоону колдонууга туура келди. Балким, сиз буга 5в күйөрманы тиркелген болушу керек, эгерде сиз анын көлөмү жөнүндө так билбесеңиз.

2 -кадам: Район - Ассамблея

Circuit - Ассамблея
Circuit - Ассамблея
Circuit - Ассамблея
Circuit - Ассамблея
Circuit - Ассамблея
Circuit - Ассамблея
Circuit - Ассамблея
Circuit - Ассамблея

Жогорудагы сүрөттөн көрүнүп тургандай, мен 2, 6, 12 төөнөгүчтөрдү колдонуп жатам, алар сизде болушу мүмкүн болгон малина пиинин бардык түрлөрү үчүн бирдей, андыктан сиз Pi колдонуп жатам деп кабатыр болбоңуз. Модель B rev2.

Кабелдерди мен жасагандай кылып сайыңыз.- 5v (pin2) VCCге барат- GND (pin6) GNDге- GPIO18 (pin2) IN1ге барат JD-VCC VCC.

Эми эстафетага … Менин орнотуум бир аз кызыктай, мен билем. Мен желдеткичти иштетүү үчүн тышкы энергия булагын колдонгум келбеди, андыктан аны пи -ге да туташтырдым. Желдеткич кабелдерин мен жасагандай эле тиркөө үчүн, piден келген 5v жана GND кабелин кичине кесүүңүз керек болот. Сиз ширетүүчү үтүктү жана мен жасаган сыяктуу лента колдонсоңуз болот. Мен сиздин пиңизди кирпичтендирүү үчүн тынчсызданууга негиз жок деп ойлойм, анткени жерге кабель гана пи менен түз байланышта. Эгерде сиз сүрөттү кылдаттык менен көрсөңүз, реле которгучу электр кабелине туташкан, демек, желдеткич өчүп калганда, пи менен түз байланыш дагы "ачык" болот. Желдеткич өчүп калганда өндүрө турган электр тогу пига кайтып келе албайт, мен бул дарбазаларды эстафетада колдонгонумдун себеби, реленин үстүндө кичинекей жетеги бар. Мен күйгүзгүч күйгүзүлгөндө кызыл жарыкты көргүм келди, андыктан мен pi качан муздаганын билем. Кааласаңыз, башка дарбазаларды колдонсоңуз болот, тескерисинче болот. Бирок GPIO буйруктарын жокко чыгарууңуз керек python скриптинде (кийинки кадамда көрсөтүлгөн fanON fan OFF функцияларында) иштеши үчүн … Биз ага жеткенде эмнени айткым келгенин көрөсүз.

3 -кадам: Скрипт

Сценарий
Сценарий
Сценарий
Сценарий

Эми скрипт жазуудан коркпоңуз … Өткөн аптада мен питонду билчү эмесмин, бирок мен бул скриптти ар кандай мисалдарды окуу жана текшерүү аркылуу жазууга жетиштим. Мен башка программалоо тилдерин билем, бирок кабатыр болбоңуз, мен сиздин пиңизди жардырбайм. Эгерде мен башка бирөө жазган кээ бир функцияларды колдонгон болсом, мен эч кандай кредит үчүн кечирим сурабайм, бирок мен бул скриптти ушинтип өзгөрттүм көп, ал негизинен жаңы.

Нускамалар

1) Тиркемени жүктөп алыңыз, же жөн эле pastebinден көчүрүп/чаптаңыз жана fan.py деп атаңыз

2) fan.py скриптин/home/pi/папкасына коюңуз

3) Аткар: sudo chmod +x /home/pi/fan.py жана sudo chown pi: pi /home/pi/fan.py

4) Сизде crontab орнотулган десеңиз, pi аткарыңыз: crontab -e

5) Төмөнкү көчүрүү /чаптоо: 5 * * * * sudo python /home/pi/fan.py жана файлды сактаңыз. (Ctrl+X жана Y)

Бул crontab ар бир 1с5мде сценарийди аткарат. Сценарий өзүнчө сценарий катары иштейт … мааниси, автоматташтырылган crontab аракетинен тышкары, сиз желдеткичти кол менен күйгүзүп/өчүрө аласыз. Сиз муну төмөнкүдөй параметрлерди колдонуп жасайсыз:

  • sudo python /home/pi/fan.py on же
  • sudo python /home/pi/fan.py өчүк

Скрипт иштеп жатканда Ctrl+C бассаңыз, мен коопсуз иштебей турган функцияны жаздым. Эгер андай кылсаңыз, сценарий чыкканга чейин күйөрман жабылат.

Демек, бул кантип иштейт?

Ар бир саат скрипт аткарылып, пи температурасын текшерет. Эгерде температура X маанисинен жогору болсо, желдеткич күйүп, Y маанисине чейин муздаганга чейин күйүп турат. Ал болгондо, скрипт чыгып кетет. Эгерде кандайдыр бир себептерден улам ал төмөнкү температурага жетпесе жана бир саат өтпөсө, сценарий кийинки жолу аткарылганда, күйөрман иштебей турганын көрөт, ал эми экинчи сценарий иштен чыгат… Чындыгында күйгүзүү/өчүрүү. Эгерде андай болбосо, желдеткич дайыма күйүп турушу үчүн кээ бир күлкүлүү маанилерди коюңуз (Y = 0 градус Цельсий сыяктуу.) ал "кабыл алынган" температурада иштейт, андыктан сценарий температураны саат сайын текшергенде жөн эле чыгып кетет.

Кээ бир баалуулуктарды түшүндүрүү

Скрипттин үстү жагында кээ бир глобалдык өзгөрмөлөр бар. Сиз өзгөртө турган өзгөрмөлөр бар.

# Кайсы реле көзөмөлдөй турганын аныктаңызFAN_PIN = 18 # сары куту ex: GPIO18 # Температураны текшерүү. Вентиляторду күйгүзүңүз, эгерде темп> 49C FAN_START = 49 # Температураны текшерүү. 28C FAN_END = 28 астында өчүрүлсүн

Бул жерде эмне кылуу керек экени абдан ачык. Эгерде сиз GPIO18ди меникиндей колдонгон болсоңуз, анда бул жерде 18 калтырыңыз, антпесе бул маанини сиз колдонгон gpioго өзгөртүңүз. FAN_START жана FAN_END сиз колдонгуңуз келген жогорку/төмөнкү температуралар. Кааласаңыз, ал жакка сүзгүч номерлерди койсоңуз болот, мисалы 49.2

Эскертүү:

Менин эстафетамды кантип орнотконум эсиңиздеби? Эгерде сиз fanON жана fanOFF функцияларын көрсөңүз, мен желдеткичти күйгүзүү үчүн gpio чыгарууну False, ал эми аны өчүрүү үчүн True деп коюп жатканымды байкайсыз. Эгер сиз реле боюнча башка дарбазанын конфигурациясын тандасаңыз, балким, бул баалуулуктарды артка кайтарышыңыз керек болот.

4 -кадам: Акыркы эскертүүлөр

Final Notes
Final Notes

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

Кичинекей бонустук код

Эгерде сиз пиңиздин температурасын текшерүүнүн тез жолун кааласаңыз,/usr/local/bin папкасында temp деп аталган файлды түзүп, андан кийин бул скриптти көчүрүп алыңыз:

pastebin.com/rUYqGjV5

аткаруу: chmod +x/usr/local/bin/temp аны аткарылуучу кылуу үчүн.

Анан пиңиздин температурасын көрүү үчүн кайсы папкадан temp териңиз.

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