{"id":26796396,"url":"https://github.com/simonemoreware/meteo_bot_pi","last_synced_at":"2025-03-29T18:18:36.706Z","repository":{"id":45713897,"uuid":"514200185","full_name":"SimoneMoreWare/meteo_Bot_pi","owner":"SimoneMoreWare","description":"Raspberry: sensore DHT 11 con invio dati su Telegram","archived":false,"fork":false,"pushed_at":"2022-07-15T08:59:40.000Z","size":5,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2023-04-24T16:11:15.043Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SimoneMoreWare.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-07-15T08:51:43.000Z","updated_at":"2022-07-15T08:55:57.000Z","dependencies_parsed_at":"2022-09-17T04:50:19.394Z","dependency_job_id":null,"html_url":"https://github.com/SimoneMoreWare/meteo_Bot_pi","commit_stats":null,"previous_names":[],"tags_count":null,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SimoneMoreWare%2Fmeteo_Bot_pi","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SimoneMoreWare%2Fmeteo_Bot_pi/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SimoneMoreWare%2Fmeteo_Bot_pi/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SimoneMoreWare%2Fmeteo_Bot_pi/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SimoneMoreWare","download_url":"https://codeload.github.com/SimoneMoreWare/meteo_Bot_pi/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246223304,"owners_count":20743168,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-03-29T18:18:36.340Z","updated_at":"2025-03-29T18:18:36.698Z","avatar_url":"https://github.com/SimoneMoreWare.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# meteo_Bot_pi\nRaspberry: sensore DHT 11 con invio dati su Telegram\n\nCome ben sappiamo il mondo Raspberry permette di creare una moltitudine di progetti interessati. Rispetto ad Arduino con Raspberry è possibile realizzare interfacce di invio dati tramite App su smartphone e PC in quanto l’instaurarsi di una connessione a internet è più semplice rispetto alla board Arduino dal momento che non vi è la necessità di utilizzare shield o componenti particolari per connettersi al proprio router-modem poiché il modulo per la connessione wifi è integrato negli ultimi modelli di Raspberry.\n\nFase preliminare: idea\n\nIn questo articolo sarà illustrato un progetto tramite il quale sarà possibile misurare i valori di temperatura e umidità tramite un sensore di temperatura DHT 11 in un determinato luogo a nostra scelta. La visualizzazione dei dati avverrà tramite l’ausilio di un messaggio di testo inviato da un bot Telgram. Inoltre saranno illustrati in questa guida la metodologia per la creazione del bot su Telegram e di varie estensioni al progetto.\n\nComponenti\n\nLe componenti basilari di questo progetto sono i seguenti:\n\nBoard Raspberry PI 3 o 4, connessa a internet\nsensore di temperatura DHT 11 (o altri sensori come DHT 22)\nBreadboard\n3x jumper\n\n![alt text] (https://i0.wp.com/www.moreware.org/wp/wp-content/uploads/2020/12/componenti.png?resize=1024%2C552\u0026ssl=1)\n\nVi sono altri componenti da poter utilizzare ma sarà visto in seguito nel momento in cui si parlerà delle possibili estensioni.\n\nSensore DHT 11: datasheet\n\nIl sensore DHT è un  sensore in grado di rilevare umidità e temperatura grazie alle semplici librerie forniteci da Adafruit.\n\nLe specifiche tecniche sono le seguenti:\n\nRange di misurazione: Umidità: 20-90%RH , Temperatura: 0-50°\nAccuratezza umiditià: Umiditià ±5％RH\nAccuratezza Temperatura: ±2℃\nRisoluzione: 1\nAlimentazione: 3-5.5v\nAttenzione, in alcuni modelli di sensore DHT 11 i pin Vcc e Signal possono essere invertiti. Un eventuale problema per il quale il programma compilato non funzioni potrebbe consistere in questo motivo.\n\n![alt text](https://i0.wp.com/www.moreware.org/wp/wp-content/uploads/2020/12/DHT11-Pinout-for-three-pin-and-four-pin-types-2.jpg?w=1024\u0026ssl=1)\n\nIl sensore DHT11 espone 3 pin denominati:\n\nGND: piedino di massa\nVCC: piedino di alimentazione\nsitgnal: piedino di comunicazione dati 1-wire\nIl DHT11 va alimentato con una tensione compresa tra i 3 e 5V. In che modo rileva l’umidità relativa e la temperatura?  Il DHT11 è in grado di rilevare il valore percentuale dell’umidità relativa misurando la resistenza elettrica tra i due elettrodi. La conduttività tra gli elettrodi aumenta all’aumentare dell’umidità relativa. Mentre per quanto concerne la temperatura il DHT11 utilizza un sensore NTC.\n\nCollegamenti con la board Raspberry\n\nIl piedino signal sarà collegato al pin 7 (GPIO). Il piedino Vcc sarà collegato al pin 2, mentre il pedino GND sarà collegato al pin 6.\n\necco qui una schema dei pin GPIO\n\n![alt text](https://i0.wp.com/www.moreware.org/wp/wp-content/uploads/2020/12/Raspberry-Pi-GPIO-Layout-Model-B-Plus-rotated-2700x900-1.png?resize=1024%2C341\u0026ssl=1)\n\nÈ importante notare che la numerazione in figura è valida solo per i seguenti modelli:\n\nRaspberry Pi Model B+\nRaspberry Pi 2B\nRaspberry Pi Zero\nRaspberry Pi Zero W\nRaspberry Pi 3B\nRaspberry PI 4\necco qui il diagramma di collegamento\n\n![alt text](https://i0.wp.com/www.moreware.org/wp/wp-content/uploads/2020/12/How-to-Setup-the-DHT11-on-the-Raspberry-Pi-Three-pin-DHT11-Wiring-Diagram-768x359-1.png?w=768\u0026ssl=1)\n\nCreazione bot\n\nIl primo passo consiste nell’aprire l’applicazione telegram. Una volta aperta cerchiamo “BotFather” tramite la funzione cerca cliccando sull’apposita lente di ingrandimento.\n\n“BotFather” è un bot che permette di creare altri bot.\n\nAvviamo il bot scrivendo “/start“, poi premiamo invio.\n\n![alt text](https://i0.wp.com/www.moreware.org/wp/wp-content/uploads/2020/12/bothfather1.png?w=623\u0026ssl=1)\n\nPer creare un nuovo bot digitiamo “/newbot”.\n\nBotFather ci chiederà di assegnare un nome al nostro nuovo Bot, basta digitare un qualsiasi nome e poi premere Invio.\n\nDobbiamo anche inserire un username che lo renderà riconoscibile pubblicamente. Username deve terminare in “Bot” o ” _bot”.\n\nIn seguito alla assegnazione del nome e dell’username BotFather ci comunicherà informazioni importanti in seguito per compilare il codice per il funzionamento del sensore e dell’invio dati. ATTENZIONE: QUESTE INFOMAZIONI LE DOVREMMO TENERE SOLO PER NOI. La prima parte riguarda il percorso per trovare il nostro bot. La seconda è la API che sarà utilizzato nel nostro codice.\n\n![alt text](https://i0.wp.com/www.moreware.org/wp/wp-content/uploads/2020/12/botfather2.png?w=618\u0026ssl=1)\n\nOperazioni preliminari per la programmazione del codice su Raspberry\n\nPer utilizzare il sensore dobbiamo scaricare la libreria Adafruit. Digitiamo sul terminale la seguente stringa:\n\n`sudo apt-get install git-core`\n\nSe da errore provare ad utilizzare la stringa `sudo apt-get update` e riprovare.\n\nInstalliamo la libreria utilizzando la seguente stringa:\n\n`git clone https://github.com/adafruit/Adafruit_Python_DHT.git`\n\nCambiamo directory con la seguente stringa:\n\n`cd Adafruit_Python_DHT`\n\nOra digitiamo;\n\n`sudo apt-get install build-essential python-dev`\n\ne installiamo la libreria con:\n\n`sudo python setup.py install`\n\nTutto questo per il funzionamento del sensore DHT 11. Per l’implementazione del bot occorre una specifica libreria. Per installare questa libreria basta eseguire il comando (prima usciamo dalle eventuali directory digitando cd).\n\n`pip install telepot`\n\nCodice completo\n\nEcco il codice in python che permette di leggere i dati dal sensore e inviarli tramite messaggio di testo tramite il bot creato da noi.\n\nPer far si che i miei passaggi corrispondano con quelli degli esempi seguenti è consigliabile creare un nuovo file dal nome “simple_bot_DHT.py” nella cartella “examples” contenuta a sua volta nella cartella “Adafruit_Python_DHT”.\n\nEcco qui il codice: https://github.com/SimoneMoreWare/meteo_Bot_pi/blob/main/dht_bot.py\nMaggiori dettagli https://www.moreware.org/wp/blog/2020/12/13/raspberry-sensore-dht-11-con-invio-dati-su-telegram/\n\nper testare il programma dobbiamo utilizzare il terminale usando diversi comandi:\n\n\n`cd Adafruit_Python_DHT\ncd examples\npython simple_bot_DHT.py`\n\nUna volta comparsa nel terminale la scritta “listeling…” apriamo la chat telegram ed iniziamo a messaggiare con il nostro bot.\n\n![alt text](https://i0.wp.com/www.moreware.org/wp/wp-content/uploads/2020/12/fd13d4a7-589f-4704-a59b-d2bff4a4f40e.jpg?resize=461%2C1024\u0026ssl=1)\n\nPer chiudere il programma basta premere i pulsanti ctrl-C dal terminale.\n\nPossibili estensioni\n\nVi sono tantissime estensioni per quanto riguarda questo progetto. Una tra le tante è l’uso di una cassetta di  derivazione in plastica al cui interno è inserita la board Raspberry alimentato da un power bank. In questo sarà possibile inserire questa cassetta nel balcone della propria abitazione (la board deve essere connessa a internet) e osservare in che modo i dati cambino durante il corso della giornata.\n\n![alt text](https://i0.wp.com/www.moreware.org/wp/wp-content/uploads/2020/12/61tdjhkS06L._AC_SL1103_.jpg?w=1024\u0026ssl=1)\n\nInoltre è possibile anche realizzare una “piccola stazione meteo” dotata di più componenti come un barometro BME280 che ci permette di misurare la pressione.\n\n![alt text](https://i0.wp.com/www.moreware.org/wp/wp-content/uploads/2020/12/bme280-barometersensor-temperatur-luftdruck-luftfeuchtigkeit-rapsberry-pi-arduino-arduino-7483-700x700-1.jpg?w=700\u0026ssl=1)\n\nVi è data anche la possibilità di salvare i dati in locale sulla propria board Raspberry tramite l’utilizzo dei File. Vi è un tutorial del nostro caro Luigi Morelli a riguardo: [Pillole di Python #020 – Files e persistenza](https://www.youtube.com/watch?v=944w5KtysjY\u0026list=PLn67k_7YnLzLPSYykxZwyjFi3SSZ4EQwf\u0026index=22)\n\nComponenti utilizzati\n\nBoard Raspberry PI 3 o 4,Modello B+\nSensore di temperatura e umidità DHT 11\nBreadboard\nJumper\nCassetta di Derivazione da Parete esterna\nBarometro BME280\n\nhttps://www.youtube.com/watch?v=Mgut50-7D10\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsimonemoreware%2Fmeteo_bot_pi","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsimonemoreware%2Fmeteo_bot_pi","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsimonemoreware%2Fmeteo_bot_pi/lists"}