Автор |
Съобщение |
pipilica
Ранг: Форумен бог
Регистриран на: Чет Апр 16, 2009 12:26 am Мнения: 2636 Местоположение: София
|
Re: Въпрос за Ардуино и DHT22
Е точно това си мислех ама не със следене за nan а пуска ток мери и спира тока на датчика.
|
Пон Фев 01, 2021 9:33 pm |
|
|
Cekins
Ранг: Форумен бог
Регистриран на: Сря Апр 20, 2005 11:02 am Мнения: 8873 Местоположение: Разград
|
Re: Въпрос за Ардуино и DHT22
Типичен пример за отстраняване на проблем като се "замита под масата"... Проблема не е отстранен а замаскиран.
|
Вто Фев 02, 2021 11:55 am |
|
|
Zdrav
Ранг: Форумен бог
Регистриран на: Сря Яну 26, 2005 1:01 pm Мнения: 1952 Местоположение: Варна
|
Re: Въпрос за Ардуино и DHT22
Израза обикновено е: "се замита под килима" Но в зависимост от габаритите на проблема и нивото на непукизма, може да се каже и "замита под масата".
_________________ Най-опасният враг на истината и свободата е мнозинството.
|
Вто Фев 02, 2021 4:54 pm |
|
|
pipilica
Ранг: Форумен бог
Регистриран на: Чет Апр 16, 2009 12:26 am Мнения: 2636 Местоположение: София
|
Re: Въпрос за Ардуино и DHT22
Няма никаква логика или някаква закономерност в увисването на датчика, предишния път работи 60 часа и чак тогава увисна, от миналата вечер има две увисвания след 8 и след 12 часа, има и на 1 час от предни дни. Ако е от кабела или бъгава програма би трябвало да е по-редовно или изобщо да не работи. Съгласен съм че щом има проблем трябва да се реши а не да се замита под килима, но за моите любителски цели няма проблем ако нещото работи по тоя начин, няма нищо фатално ако спре да работи.
|
Сря Фев 03, 2021 2:09 am |
|
|
stefan63
Ранг: Форумен бог
Регистриран на: Вто Фев 07, 2012 10:22 pm Мнения: 3074
|
Re: Въпрос за Ардуино и DHT22
Ето ти една логика - индуциран шум в линията, датчикът застава в междинно съсътояние - приел е шума за СТАРТ , и чака няколко бита (колко няколко - зависи от преминалия шум)-за да сравни адреса със своя. Ардуиното не е усетило шума (щото е мастер и не следи лиията). Почва да предава старт и адрес , никой не му отговаря) и излиза. Оттам нататък поведението на датчика е непредсказуемо. Трябва да се направи ресет на и2ц шината. Дали твоето Ардуино го прави- божа работа. Ако и ресет не помага - трябва да се изключи и включи захранването на датчика . Това твоето ардуино със сигурност не го прави, а ти ходиш да вадиш адаптера. Та това е "стандартна " процедура при проектиране на схема с и2ц.
|
Сря Фев 03, 2021 7:07 am |
|
|
bongo_x2
Ранг: Форумен бог
Регистриран на: Вто Яну 20, 2009 10:54 pm Мнения: 11338 Местоположение: "Занзибар"
|
Re: Въпрос за Ардуино и DHT22
Датчикът не ползва I2C, чака за стартов импулс и после си предава данните.
Edit Значи датчикът спи и чака ниско ниво с определена продължителност за да се събуди и след това почва да предава. После прави ново измерване за около 2сек и ако не получи ново запитване (не срещнах за колко време) пак си ляга. Въпросът е к'во става ако скапаното китайско МЦУ (което се очаква да е вътре) вземе, че забие по време на сън. Тук съм пълен невежа.
Edit2 Програмата за Ардуиното е елементарна (в нетя е пълно с примери) и е добре да се промени: данните се четат и игнорират, изчаква се поне 2сек и се четат пресните, а не от преди намколкоси минути. А най-добре да се ползва още един пин който да пуща +5В към датчика (няма нужда от външен транзистор), да се изчака 5сек за по-сигурно и тогава да се чете. Нека който се е занимавал да спретне една програмка а pipilica да си я налее.
|
Сря Фев 03, 2021 11:24 am |
|
|
stefan63
Ранг: Форумен бог
Регистриран на: Вто Фев 07, 2012 10:22 pm Мнения: 3074
|
Re: Въпрос за Ардуино и DHT22
да се шиб..м в умника....
|
Сря Фев 03, 2021 12:28 pm |
|
|
al_at
Ранг: Форумен бог
Регистриран на: Пет Апр 13, 2018 3:00 pm Мнения: 1311 Местоположение: София
|
Re: Въпрос за Ардуино и DHT22
И по-нагоре го писах - чипчето си има чексума на данните - ако не излиза, трябва да се игнорира измерването, да се изчака и да се повтори пак. Ама трябва да се напише културно софтчето.
|
Сря Фев 03, 2021 12:37 pm |
|
|
Zdrav
Ранг: Форумен бог
Регистриран на: Сря Яну 26, 2005 1:01 pm Мнения: 1952 Местоположение: Варна
|
Re: Въпрос за Ардуино и DHT22
Прочети какво е писал stefan63, малко по-нагоре. Като увисне I2C комуникацията, каква чексума, какви пет лева. Първото ниво за опит за възстановяване е т.нар. "софтуерен ресет на I2C бъс-а". Когато транзакция от страна на мастъра излезе по таймаут се пуска определен патърн по SDA, SCL с който се "отблокира" I2C слейва, който чака мастъра, който чака слейва, който чака мастъра... и т.н. И след това се пробва с нова транзакция. Ако няколко поредни пъти не успее да го рестратира - тогава може да се премине на следващата стъпка - Power Cycle на захранването на DHT22 (ако има пусната жица за захранване от Ардуино мастъра и ако Ардуино мастъра я контролира. Ако и това не помогне - буди pipilica да ходи "да извади адаптера".
_________________ Най-опасният враг на истината и свободата е мнозинството.
|
Сря Фев 03, 2021 1:49 pm |
|
|
bongo_x2
Ранг: Форумен бог
Регистриран на: Вто Яну 20, 2009 10:54 pm Мнения: 11338 Местоположение: "Занзибар"
|
Re: Въпрос за Ардуино и DHT22
И малко по-надолу!
|
Сря Фев 03, 2021 2:26 pm |
|
|
Zdrav
Ранг: Форумен бог
Регистриран на: Сря Яну 26, 2005 1:01 pm Мнения: 1952 Местоположение: Варна
|
Re: Въпрос за Ардуино и DHT22
Ахаа не било I2C. Ама кой да погледне под килима...
_________________ Най-опасният враг на истината и свободата е мнозинството.
|
Сря Фев 03, 2021 3:06 pm |
|
|
pipilica
Ранг: Форумен бог
Регистриран на: Чет Апр 16, 2009 12:26 am Мнения: 2636 Местоположение: София
|
Re: Въпрос за Ардуино и DHT22
Утре ще си взема Ардуино нано и ще пробвам да го програмирам с това, то и в момента е с такова но не знам какво е сложил моя познат дето ми го прати. https://simple-circuit.com/arduino-exce ... 22-sensor/Ще помоля за два реда код който да пуска ток на някой пин и след като си премери да гаси тока на пина. И един въпрос ред 27 от кода определя на какъв интервал да мери в милисекунди нали така.
|
Сря Фев 03, 2021 6:43 pm |
|
|
MYXATA
Ранг: Форумен бог
Регистриран на: Пон Юни 05, 2006 12:48 pm Мнения: 4393 Местоположение: където небето среща земята, ракията е Jameson, а бирата Guinness
|
Re: Въпрос за Ардуино и DHT22
аз не че искам да се заяждам, ама освен ако нямаш токов ЦАП, на пиновете не се пуска ток ами се подава напрежение
_________________ ... ако трети ден не ти се работи... това означава, че е сряда !
|
Сря Фев 03, 2021 8:48 pm |
|
|
pipilica
Ранг: Форумен бог
Регистриран на: Чет Апр 16, 2009 12:26 am Мнения: 2636 Местоположение: София
|
Re: Въпрос за Ардуино и DHT22
Сори, изразих се неправилно. Трябва да изкара 5 волта на един пин след 4-5 секунди да си прочете пина дето закачен DHT22 и да изключи 5-те волта. Така добре ли е.
|
Сря Фев 03, 2021 10:10 pm |
|
|
bongo_x2
Ранг: Форумен бог
Регистриран на: Вто Яну 20, 2009 10:54 pm Мнения: 11338 Местоположение: "Занзибар"
|
Re: Въпрос за Ардуино и DHT22
Вместо да са прайти на много умни: някой с опит да отдели половин час за програмата на човека! Така като гледам всички пишещи са отделили повече време да хвърлят боб...
|
Сря Фев 03, 2021 11:55 pm |
|
|