![Интелигентно управление на Raspberry Pi вентилатор с помощта на Python и Thingspeak: 7 стъпки Интелигентно управление на Raspberry Pi вентилатор с помощта на Python и Thingspeak: 7 стъпки](https://i.howwhatproduce.com/images/011/image-32699-j.webp)
Съдържание:
- Консумативи
- Стъпка 1: Изграждане на веригата
- Стъпка 2: Влезте в температурата на процесора с ThingSpeak
- Стъпка 3: Получаване на температурата на процесора от Raspberry Pi с помощта на Python
- Стъпка 4: Управление на вентилатора въз основа на температурата
- Стъпка 5: Окончателен код на Python
- Стъпка 6: Мониторинг на данни чрез Thingspeak Cloud
- Стъпка 7: Стартирайте Python Script при стартиране
2025 Автор: John Day | [email protected]. Последно модифициран: 2025-01-23 14:36
![Интелигентно управление на Raspberry Pi вентилатор с помощта на Python & Thingspeak Интелигентно управление на Raspberry Pi вентилатор с помощта на Python & Thingspeak](https://i.howwhatproduce.com/images/011/image-32699-1-j.webp)
Кратък преглед
По подразбиране вентилаторът е директно свързан към GPIO - това предполага неговата постоянна работа. Въпреки относително тихата работа на вентилатора, неговата непрекъсната работа не е ефективно използване на активна охладителна система. В същото време постоянната работа на вентилатора може просто да бъде досадна. Също така, ако Raspberry Pi е изключен, вентилаторът ще продължи да работи, ако захранването е свързано.
Тази статия ще покаже как, използвайки прости и не сложни манипулации, превръщате съществуваща охладителна система в интелигентна, която ще бъде включена само когато процесорът наистина се нуждае от нея. Вентилаторът ще се включи само при интензивна употреба, като по този начин ще намали консумацията на енергия и шума. Също така удължава живота на вентилатора, като го изключва, когато не е необходимо.
Какво ще научите
Как да внедрите скрипт на Python за управление на вентилатор въз основа на текущата температура на Raspberry CPU с помощта на On-Off контрол с температурна хистерезис. Как да транспортирате данни от вашия RaspberryPi към Things Speak Cloud.
Консумативи
Компонентите, които ще са ви необходими за този проект, са както следва
- Raspberry Pi 4 Компютърен модел B 4GB
- NPN транзистор S8050330ohms резистор
- Armor алуминиев метален калъф с двойни вентилатори за Raspberry Pi
- Кабелни кабели
- Платка
Стъпка 1: Изграждане на веригата
![Изграждане на веригата Изграждане на веригата](https://i.howwhatproduce.com/images/011/image-32699-2-j.webp)
![Изграждане на веригата Изграждане на веригата](https://i.howwhatproduce.com/images/011/image-32699-3-j.webp)
Схемата е доста проста. Захранването на вентилатора се прекъсва с помощта на NPN транзистор. В тази конфигурация транзисторът действа като превключвател от долната страна. Резисторът е необходим само за ограничаване на тока чрез GPIO. GPIO на Raspberry Pi има максимален токов изход от 16mA. Използвах 330 ома, което ни дава базов ток от около (5-0.7)/330 = 13mA. Избрах NPN транзистор S8050, така че превключването на 400mA натоварване от двата вентилатора не е проблем.
Стъпка 2: Влезте в температурата на процесора с ThingSpeak
![Регистрирайте температурата на процесора с ThingSpeak Регистрирайте температурата на процесора с ThingSpeak](https://i.howwhatproduce.com/images/011/image-32699-4-j.webp)
ThingSpeak е платформа за проекти, базирани на концепцията за Интернет на нещата. Тази платформа ви позволява да изграждате приложения въз основа на данни, събрани от сензори. Основните характеристики на ThingSpeak включват: събиране на данни в реално време, обработка на данни и визуализация. API на ThingSpeak не само ви позволява да изпращате, съхранявате и осъществявате достъп до данни, но също така предоставя различни статистически методи за тяхната обработка.
ThingSpeak може да интегрира популярни устройства и услуги като:
- Arduino
- Малина пий
- oBridge / RealTime.io
- Електрически имп
- Мобилни и уеб приложения
- Социални мрежи
- Анализ на данни в MATLAB
Преди да започнем, имате нужда от акаунт в ThingSpeak.
- Отидете на следната връзка и се регистрирайте в ThingSpeak.
- След активиране на вашия акаунт влезте.
- Отидете на Канали -> Моите канали
- Щракнете върху бутона Нов канал.
- Въведете името, описанието и полетата на данните, които искате да качите
- Щракнете върху бутона Запазване на канал, за да запазите всичките си настройки.
Нуждаем се от API ключ, който по -късно ще добавим към кода на python, за да качим температурата на процесора си в облака Thingspeak.
Щракнете върху раздела API Keys, за да получите API API Key
След като имате API API ключ, ние сме почти готови да качим нашите данни.
Стъпка 3: Получаване на температурата на процесора от Raspberry Pi с помощта на Python
Скриптът се основава на извличане на температурата на процесора, което се случва всяка секунда. Тя може да бъде получена от терминала, като изпълните командата vcgencmd с параметъра mjera_temp.
vcgencmd мярка_темп
Библиотеката Subprocess.check_output () беше използвана за изпълнение на командата и след това с помощта на регулярен израз за извличане на действителната стойност от върнатия низ.
от подпроцес импортиране check_output
от повторно импортиране findalldef get_temp (): temp = check_output (["vcgencmd", "asure_temp "]). decode () temp = float (findall ('\ d+\. / d+', temp) [0]) return (temp) print (get_temp ())
След извличане на температурната стойност, данните трябва да бъдат изпратени в облака ThingSpeak. Използвайте своя API API Key, за да промените променливата myApi в долния код на Python.
от заявка за импортиране на urllib
от повторно импортиране findall от време импортиране на сън от подпроцес внос check_output myAPI = '###############' baseURL = 'https://api.thingspeak.com/update?api_key=% s ' % myAPIdef get_temp (): temp = check_output (["vcgencmd", "asure_temp "]). decode () temp = float (findall (' / d+\. / d+', temp) [0]) return (temp) опитайте: докато True: temp = get_temp () conn = request.urlopen (baseURL + '& field1 = % s' % (temp)) print (str (temp)) conn.close () sleep (1) с изключение на KeyboardInterrupt: print („Изход натиснат Ctrl+C“)
Стъпка 4: Управление на вентилатора въз основа на температурата
Скриптът на Python, показан по -долу, реализира логика, която включва вентилатора, когато температурата се повиши над tempOn и изключва само когато температурата падне под прага. По този начин вентилаторът няма да се включва и изключва бързо.
импортирайте RPi. GPIO като GPIO
импортиране на sys от повторно импортиране findall от време импортиране на сън от подпроцес импорт check_output def get_temp (): temp = check_output (["vcgencmd", "измерване_темп"]). decode () temp = float (findall ('\ d+\. / d+ ', temp) [0]) return (temp) try: GPIO.setwarnings (False) tempOn = 50 prag = 10 controlPin = 14 pinState = False GPIO.setmode (GPIO. BCM) GPIO.setup (controlPin, GPIO. OUT, initial = 0) while True: temp = get_temp () if temp> tempOn и не pinState или temp <tempOn - праг и pinState: pinState = не pinState GPIO.output (controlPin, pinState) print (str (temp) + "" + str (pinState)) sleep (1) с изключение на KeyboardInterrupt: print ("Изход натиснат Ctrl+C") с изключение на: print ("Other Exception") print ("--- Start Exception Data:") traceback.print_exc (limit = 2, file = sys.stdout) print ("--- Данни за изключение на край:") накрая: print ("CleanUp") GPIO.cleanup () print ("Край на програмата")
Стъпка 5: Окончателен код на Python
Основният код на python може да бъде намерен в моя акаунт в GitHub на следната връзка. Не забравяйте да поставите свой собствен API API Key.
- Влезте в своята платка за Raspberry PI
- Изпълнете следната команда на терминала
python3 cpu.py
Стъпка 6: Мониторинг на данни чрез Thingspeak Cloud
![Мониторинг на данни чрез Thingspeak Cloud Мониторинг на данни чрез Thingspeak Cloud](https://i.howwhatproduce.com/images/011/image-32699-5-j.webp)
След известно време отворете канала си в ThingSpeak и трябва да видите как се качва температурата в облака Thingspeak в реално време.
Стъпка 7: Стартирайте Python Script при стартиране
За да направите това, в края на /etc/rc.local файла:
sudo nano /etc/rc.local
Трябва да поставите командата за стартиране на скрипта пред изхода на ред 0:
sudo python /home/pi/cpu.py &
Наличието на символа & в края на командата е задължително, тъй като това е флаг за стартиране на процеса във фонов режим. След рестартирането скриптът ще се стартира автоматично и вентилаторът ще се включи, когато са изпълнени посочените условия.
Препоръчано:
LED бюро за интелигентно бюро - Интелигентно осветление W/ Arduino - Работно пространство на Neopixels: 10 стъпки (със снимки)
![LED бюро за интелигентно бюро - Интелигентно осветление W/ Arduino - Работно пространство на Neopixels: 10 стъпки (със снимки) LED бюро за интелигентно бюро - Интелигентно осветление W/ Arduino - Работно пространство на Neopixels: 10 стъпки (със снимки)](https://i.howwhatproduce.com/images/001/image-1333-j.webp)
LED бюро за интелигентно бюро | Интелигентно осветление W/ Arduino | Работно пространство на Neopixels: Сега, когато прекарваме много време у дома, учим и работим виртуално, така че защо да не подобрим нашето работно пространство с персонализирана и интелигентна система за осветление, базирана на светодиоди Arduino и Ws2812b. Тук ще ви покажа как да изградите своя Smart Настолна LED светлина, която
Интелигентно градинарство, основано на IoT и интелигентно земеделие, използващо ESP32: 7 стъпки
![Интелигентно градинарство, основано на IoT и интелигентно земеделие, използващо ESP32: 7 стъпки Интелигентно градинарство, основано на IoT и интелигентно земеделие, използващо ESP32: 7 стъпки](https://i.howwhatproduce.com/images/011/image-31185-j.webp)
Интелигентно градинарство, базирано на IoT и интелигентно земеделие Използване на ESP32: Светът се променя с времето и така селското стопанство. В днешно време хората интегрират електрониката във всяка област и селското стопанство не прави изключение за това. Това сливане на електроника в селското стопанство помага на фермерите и хората, които стопанисват градини
Кола с дистанционно управление - Управление с помощта на безжичен Xbox 360 контролер: 5 стъпки
![Кола с дистанционно управление - Управление с помощта на безжичен Xbox 360 контролер: 5 стъпки Кола с дистанционно управление - Управление с помощта на безжичен Xbox 360 контролер: 5 стъпки](https://i.howwhatproduce.com/images/001/image-945-49-j.webp)
Кола с дистанционно управление - Управление с помощта на безжичен Xbox 360 контролер: Това са инструкции, за да изградите свой собствен автомобил с дистанционно управление, управляван с помощта на безжичен контролер Xbox 360
Охлаждаща подложка за лаптоп DIY - Страхотни лайфхакове с вентилатор на процесора - Творчески идеи - Компютърен вентилатор: 12 стъпки (със снимки)
![Охлаждаща подложка за лаптоп DIY - Страхотни лайфхакове с вентилатор на процесора - Творчески идеи - Компютърен вентилатор: 12 стъпки (със снимки) Охлаждаща подложка за лаптоп DIY - Страхотни лайфхакове с вентилатор на процесора - Творчески идеи - Компютърен вентилатор: 12 стъпки (със снимки)](https://i.howwhatproduce.com/images/001/image-1531-43-j.webp)
Охлаждаща подложка за лаптоп DIY | Страхотни лайфхакове с вентилатор на процесора | Творчески идеи | Компютърен фен: Трябва да гледате това видео до края му. за разбиране на видеото
Интелигентно улично осветление с помощта на Ir сензор с Arduino: 4 стъпки (със снимки)
![Интелигентно улично осветление с помощта на Ir сензор с Arduino: 4 стъпки (със снимки) Интелигентно улично осветление с помощта на Ir сензор с Arduino: 4 стъпки (със снимки)](https://i.howwhatproduce.com/images/001/image-1976-100-j.webp)
Интелигентна улична светлина с помощта на Ir сензор с Arduino: Моля АБОНИРАЙТЕ се за канала ми за още проекти. Този проект е за интелигентна улична светлина, уличната светлина ще се включва, докато превозното средство преминава през нея. Тук използваме 4 инфрачервени сензора, които разпознават позицията на превозното средство, всеки IR сензор контролира