Převod programu v Pythonu do prostředí Arduina – Python – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Převod programu v Pythonu do prostředí Arduina – Python – Fórum – Programujte.comPřevod programu v Pythonu do prostředí Arduina – Python – Fórum – Programujte.com

 

Ladislav Šafránek
~ Anonymní uživatel
8 příspěvků
30. 1. 2015   #1
-
0
-

http://arduino.cz/termostat-s-raspberry-pi/
Dobrý den, tento projekt, uvedený na stránkách Arduina použivá hardware programovaný v prostředí Pythonu... je nějaká možnost konverze pro použití v prostředí Arduino Nano?
 

Nahlásit jako SPAM
IP: 185.59.122.–
KIIV
~ Moderátor
+43
God of flame
30. 1. 2015   #2
-
0
-

musis napsat nacisto.. teplomer rozjedes snadno, ale na webovy rozhrani budes potrebovat prinejmensim ethernet nebo wifi modul, na sifrovani predem zapomen

Nahlásit jako SPAM
IP: 93.91.152.–
Program vždy dělá to co naprogramujete, ne to co chcete...
Ladislav Šafránek
~ Anonymní uživatel
8 příspěvků
31. 1. 2015   #3
-
0
-

#2 KIIV

Dobře, a jak funguje tento program?

/* 
Temperature Sensor
Reads an Analog Devices TMP36GT9Z-ND or AD22100 temperature sensor on analog pin 0
and converts the voltage value to temperature. 
Connect Pin 1 to 5 V.
Connect Pin 2 to A0.
Connect Pin 3 to Gnd. 
*/

//#if defined(ARDUINO) && ARDUINO >= 100
// #include "Arduino.h"
// #else
// #include "WProgram.h"
// #endif


int TsensorPin = A0; // select the input pin for the sensor
int ledPin = 13; // select the pin for the LED
int wait = 500; // 1/2 wait time between measurements
double temperature = 0.0;

void setup() {
// declare the ledPin as an OUTPUT:
pinMode(TsensorPin, INPUT); // and set pins to input.
pinMode(ledPin, OUTPUT); // Set Temperature Sensor Pin
Serial.begin (115200); // Set up the Serial Connection.
Serial.println("Reading the Temperature Sensor"); // Greet user.
}

void loop() {
temperature = TMP36GT_AI_value_to_Celsius(analogRead(TsensorPin)); // read temperature
// temperature = AD22100K_AI_value_to_Celsius(analogRead(TsensorPin)); // read temperature
Serial.print("Temperature read (C): "); 
Serial.println(temperature,2); // write temperature to Serial
digitalWrite(ledPin, HIGH); // turn the ledPin on
delay(wait); // stop the program for <wait> milliseconds:
digitalWrite(ledPin, LOW); // turn the ledPin off: 
delay(wait); // stop the program for for <wait> milliseconds:

}

double TMP36GT_AI_value_to_Celsius(int AI_value)
{ // Convert Analog-input value to temperature
float voltage;
voltage = AI_value * (5000.0/1024); // Sensor value in mV:
return ((voltage -750) /10) +25; // Temperature according to datasheet: 750 mV = 25 °C
// 10 mV / °C
}

double AD22100K_AI_value_to_Celsius(int AI_value)
{ // Convert Analog-input value to temperature
float voltage;
voltage = AI_value * (5000.0/1024); // Sensor value in mV:
return (voltage -1375) /22.5; // Temperature according to datasheet: 1.375 V <-> 0 °C
// 22.5 mV / °C; Ratiometric measurement, conversion valid for 5 V!
}
 

Našel sem ho na webu, a použiju ho jako šablonu, ale nevím,  co za teploty to snímá a jak to s nimi pracuje? Najdu tu číselnou hodnotu "nějaký" teploty, ale už z toho nevím, co to vlastně dělá... při jaký teplotě to spustí dohřev, a při jaký ho to přeruší? 

Nahlásit jako SPAM
IP: 185.59.122.–
KIIV
~ Moderátor
+43
God of flame
31. 1. 2015   #4
-
0
-

Temperature Sensor
Reads an Analog Devices TMP36GT9Z-ND or AD22100 temperature sensor on analog pin 0
and converts the voltage value to temperature. 

je to hned pod tvoji otazkou jak to funguje

Rezim termostatu tam nevidim, jen to prevadi a posila na seriovej port

Nahlásit jako SPAM
IP: 93.91.152.–
Program vždy dělá to co naprogramujete, ne to co chcete...
Ladislav Šafránek
~ Anonymní uživatel
8 příspěvků
31. 1. 2015   #5
-
0
-

#4 KIIV
Promiň, ale tohle je moje první střetnutí s Arduinem...

Takže defacto, ta "vyhodnocovaní jednotka" není v programu, ale kdesi v "někde", kam to ten sériovej port posílá. 

Nahlásit jako SPAM
IP: 185.59.122.–
KIIV
~ Moderátor
+43
God of flame
31. 1. 2015   #6
-
0
-

#5 Ladislav Šafránek
ne nutne, muze to byt jen ukazka, jak se nacita a prevadi hodnota z jednoho nebo druheho konkretniho senzoru a posle se to do pocitace k zobrazeni (treba v arduino serial monitoru) - jelikoz pridavat jeste display by zeslozitilo jednoduchou ukazku

Nahlásit jako SPAM
IP: 93.91.152.–
Program vždy dělá to co naprogramujete, ne to co chcete...
KIIV
~ Moderátor
+43
God of flame
31. 1. 2015   #7
-
0
-
Nahlásit jako SPAM
IP: 93.91.152.–
Program vždy dělá to co naprogramujete, ne to co chcete...
Ladislav Šafránek
~ Anonymní uživatel
8 příspěvků
31. 1. 2015   #8
-
0
-

#7 KIIV
To, cos poslal, je "plně funkční" - termostat? (ve smyslu programu pro arduino, co nepotřebuje žádný další HW kromě napájení a samotných čidel a popřípadě ovládaného ventinu na topení?)

Nahlásit jako SPAM
IP: 185.59.122.–
Ladislav Šafránek
~ Anonymní uživatel
8 příspěvků
31. 1. 2015   #9
-
0
-

Promiň, že tu to řeším takto, ale toto je "domácí úkol" se kterým se musím poprat, aby mě můj kamarád vůbec začal učit, a já prostě usnul na mrtvém bodě... nejlíp se učím z hotového programu, ze kterého si odvodím funkci, a ne z X často protichůdných zdrojů. 

Nahlásit jako SPAM
IP: 185.59.122.–
KIIV
~ Moderátor
+43
God of flame
31. 1. 2015   #10
-
0
-

no zacina se obvykle tak, ze mas k dispozici nejaky teplomer, nejaky display, nejaky arduino, nejaky tlacitka, nejaky pozadavky, co to ma umet

1. rozjedes arduino "ide", rozjedes example na rozblikani ledky a zvladnes nahrat do arduina

2. rozjedes kazdou cast zvlast - abys nacetl teplomer a poslal hodnotu do pocitace (abys nemusel jeste resit display)

3. samostatne rozjedes display

4. vemes 2+3 a nactenou teplotu zobrazis na display

....

Nahlásit jako SPAM
IP: 93.91.152.–
Program vždy dělá to co naprogramujete, ne to co chcete...
Ladislav Šafránek
~ Anonymní uživatel
8 příspěvků
31. 1. 2015   #11
-
0
-

|Displej nemám, bohatě by mi stačil program pro Arduino, co by fungoval jako automatický termostat... prostě tak, že by autonomně, bez dalšího HW a bez zobrazení na displeji reguloval teplotu... ať už ovládáním kohoutku u topení, anebo řízením termostatu. 

Co tam ten autor mého příkladu vtěsnal tu letku? Jen pro kontrolu správné činnosti programu? 

Nahlásit jako SPAM
IP: 185.59.122.–
KIIV
~ Moderátor
+43
God of flame
31. 1. 2015   #12
-
0
-

#11 Ladislav Šafránek
Jestli myslis ledku, tak je to jen blikne po kazdem zmereni a odeslani hodnoty

Nahlásit jako SPAM
IP: 93.91.152.–
Program vždy dělá to co naprogramujete, ne to co chcete...
Ladislav Šafránek
~ Anonymní uživatel
8 příspěvků
31. 1. 2015   #13
-
0
-

Myslím toto: pinMode(ledPin, OUTPUT); // Set Temperature Sensor Pin

proč ledka je brána jako snímač teploty?

Nahlásit jako SPAM
IP: 185.59.122.–
KIIV
~ Moderátor
+43
God of flame
31. 1. 2015   #14
-
0
-

#13 Ladislav Šafránek
jen nejakej zapomenutej komentar.. nedava tam smysl - u vstupu s pullupem dejme tomu, ale u vystupu na ledku?

Nahlásit jako SPAM
IP: 93.91.152.–
Program vždy dělá to co naprogramujete, ne to co chcete...
Ladislav Šafránek
~ Anonymní uživatel
8 příspěvků
31. 1. 2015   #15
-
0
-

Jo, za dvojicí lomítek je to komentář, ale tato část textu "pinMode(ledPin, OUTPUT" se stane součástí programu.

Nahlásit jako SPAM
IP: 185.59.122.–
KIIV
~ Moderátor
+43
God of flame
31. 1. 2015   #16
-
0
-
Nahlásit jako SPAM
IP: 93.91.152.–
Program vždy dělá to co naprogramujete, ne to co chcete...
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 15 hostů

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý