DS18B20 + 74HC595

На этом форуме Вы можете задать вопросы знатокам программы и автору.
sillver
Сержант
Сообщения: 194
Зарегистрирован: 27 апр 2017, 12:04
Откуда: УКРАИНА
Имя: Вячеслав

DS18B20 + 74HC595

Сообщение sillver »

неправильно показывает температуру. подозреваю что не правильно конвертирую типы.
sillver
Сержант
Сообщения: 194
Зарегистрирован: 27 апр 2017, 12:04
Откуда: УКРАИНА
Имя: Вячеслав

DS18B20 + 74HC595

Сообщение sillver »

Все мысли кончились???
Ezhov_s
Рядовой
Сообщения: 8
Зарегистрирован: 26 мар 2016, 15:55

DS18B20 + 74HC595

Сообщение Ezhov_s »

Сделай скриншот проекта, а то не понятно на словах в чем проблема.
Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25 дек 2015, 17:32
Откуда: Ярославль.
Имя: Александр
Поблагодарили: 5 раз
Контактная информация:

DS18B20 + 74HC595

Сообщение Sancho »

sillver писал(а): 05 апр 2018, 22:53Все мысли кончились???
Питание.
Сделай нормальное питание на датчик, и 595 отдельным + запитай. Чудес не бывает.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
KSP
Лейтенант
Сообщения: 305
Зарегистрирован: 18 сен 2015, 14:00
Откуда: Саратов
Имя: Сергей
Поблагодарили: 1 раз

DS18B20 + 74HC595

Сообщение KSP »

Все таки не понятно, что значит показывает неправильно , что значения переворачивает или врет с температурой?? И если не трудно попробуйте этот проект , что он будет показывать.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
S
Labu559
Лейтенант
Сообщения: 359
Зарегистрирован: 25 янв 2018, 22:23
Откуда: Bukovyna
Имя: Василий

DS18B20 + 74HC595

Сообщение Labu559 »

Sancho писал(а): 06 апр 2018, 08:51Чудес не бывает
Это точно, но так хочется верить. :wizard: Это в том плане, что паразитный конденсатор накапливающий энергию для измерения и преобразования температуры в течении 1000 мсек, успеет зарядиться между интервалами измерений в 1 сек.(тех же 1000 мс.) выставленные в настройках датчика, при том, что еще нужно при считывании температуры с одного термодатчика DS1820:
1) послать сигнал обнуления линии (480...960 мкc);
2) принять импульс присутствия или заполнить время паузой (60...240 мкc);
3) послать команду пропуска идентификации 0xCC;
4) послать команду начала преобразования 0x44;
5) пауза не менее 750 мкc для завершения процесса преобразования;
6) обнулить линию;
7) послать команду пропуска идентификации 0xCC;
8) послать команду считывания блокнота 0xBE;
9) принять 9 байт;
10) выделить и проанализировать бит десятых долей градуса;
11) проанализировать бит знака;
12) если знак отрицательный, то перевести значение температуры в дополнительный код.
sillver писал(а): 05 апр 2018, 22:53Все мысли кончились
Почитайте и уверен, что мысли появятся. Да и с подтяжкой у Вас непонятно как, ведь это через неё заряжаеся паразитная ёмкость датчика.
KSP
Лейтенант
Сообщения: 305
Зарегистрирован: 18 сен 2015, 14:00
Откуда: Саратов
Имя: Сергей
Поблагодарили: 1 раз

DS18B20 + 74HC595

Сообщение KSP »

Блок который я вставил в проект первые 11 пунктов не выполняет, поэтому на каждый пин можно подключить только один датчик я это проверял на Modbus , как только ставлю этот блок слейв работает на любой скорости , без блока начинает терять связь.
S
Labu559
Лейтенант
Сообщения: 359
Зарегистрирован: 25 янв 2018, 22:23
Откуда: Bukovyna
Имя: Василий

DS18B20 + 74HC595

Сообщение Labu559 »

KSP писал(а): 06 апр 2018, 10:37Блок который я вставил в проект первые 11 пунктов не выполняет
[spoiler= Ваш блок, можно ещё библиотеку посмотреть Oneware]
DS18b20.png
[/spoiler]
Извините, что может непонятно изъясняюсь. Я предположил, что паразитная емкость не обеспечивает необходимым током питания датчик во время измерений (работа двух генераторов, один из которых термозависимый), преобразования данных разницы генераторов, записи данных в ЕЕПРОМ датчика. Если датчик работает с нормальным питанием, МК дает комманду DS18b20 переключиться на шину питания в момент этих действий. Этого не происходит при паразитном питании. Заряд накапливается с шины данных по которой в данный момент происходит "общение" МК низким уровнем (длительностью этого уровня точнее) с датчиком. Тока может попросту не хватать. Вот моя трактовка (может где-то допускаю искажения, извините) тех.доков. Потому прикладываю всегда источники информации.
Ребята, у ТС в проекте паразитное питание датчика, об его проекте и веду речь! И ув. Sancho о том же.

P.S. Но! Если в мониторе порта всё Ок - он получает данные через буфер с обновлением (какие там у Вас не знаю условия), а 595 в каждом цикле Loop обновляет показания, то может нужна промежуточная переменная с условием перезаписи. Это надо код смотреть штатного блока от куда данные считываются, с переменной или ЕЕПРОМ. Но однажды помню о похожей проблеме писал ув.Phazz c TM1637(там тоже блок в каждом цикле обновлялся). Не разбирались, просто вставили ПБлок от автора RedSky DS18b20_(Code) и всё заработало. Но если паразитное питание- необходимость, то как и блок из проекта ув.KSP(автор ув. nik2-2005) - похоже не помогут.
Ещё, при частом опросе DS18b20 саморазогревается. Такие попытки приводят совсем к другому чем ожидаемый результату точности контроля.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Последний раз редактировалось Labu559 06 апр 2018, 16:27, всего редактировалось 3 раза.
KSP
Лейтенант
Сообщения: 305
Зарегистрирован: 18 сен 2015, 14:00
Откуда: Саратов
Имя: Сергей
Поблагодарили: 1 раз

DS18B20 + 74HC595

Сообщение KSP »

А я и не говорил, что блок мой я его года два назад скачал на старом сайте, автора не помню, на новом сайте его уже нет. Так , что если автор найдется пусть выложит его еще раз. Насколько я понял он просто считывает показания с шины по сигналу на входе, а датчик сам все время показания на шину выдает без всяких запросов он так устроен.
S
Labu559
Лейтенант
Сообщения: 359
Зарегистрирован: 25 янв 2018, 22:23
Откуда: Bukovyna
Имя: Василий

DS18B20 + 74HC595

Сообщение Labu559 »

KSP писал(а): 06 апр 2018, 12:08датчик сам все время показания на шину выдает без всяких запросов
Датчик, как и девушка не против дать, но оба хотят поговорить перед этим, причем оба по протоколу. В первом случае обязательный протокол в 26 сообщении и рисунке в 28-м, во втором можно кое-что пропустить. Надеюсь шутка не испортит предпраздничного настроения никому. Всем весёлых праздников и :kiss: без "протоколов".
Ответить

Вернуться в «Спросить у знатоков»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 0 гостей