27 МОСКОВСКАЯ ВСТРЕЧА
Форум самогонщиков Сайт Барахолка Магазин 27 МОСКОВСКАЯ ВСТРЕЧА

Применение датчиков температуры при автоматизации. Программирование и не только.

Форум самогонщиков Приборы и электр(он)ика
1 ... 7 8 9 10 11 12 13 ... 27 10
Kotische Академик Саратов 8.1K 2.5K
Отв.180  28 Февр. 09, 09:28
Плохо смотришь. На проце одной и той же процедурой ты можешь штук 8 ног крутить и на них 8 ДС1821 повесить. И, заметь, общаться ОДНОВРЕМЕННО со всеми.Rudy, 28 Февр. 09, 01:57
Заметил! Только так и не понял зачем мне это? Если у меня DS1821 всего одна штука и больше мне не надо. А комутатор CD4051 вообще то 8 канальный, а на СОМ-порте две управляющие линии DTR и RTS, что позмоляет легко иметь 4 канала 1Wire не одном СОМ-порту, что за глаза и за уши... для моей задачи... Подмигивающий

Так что Руди, я всё никак не пойму, зачем я должен изыскивать сам себе нехилый гиморой, когда всё можно сделать достаточно просто и красиво...  Непонимающий

ЗЫ: Я бы мог и на Меге32 поставить этот самый CD4051 и мультиплексировать им USART на 8 каналов, и не иметь вообще никаких проблем ни с количеством портов, на с апаратностью обработки 1Wire-Host, ни с RealTime-востью и многозадачностью алгоритма внутри микроконтроллера... но я посчитал, что именно так как я сделал для моей задачи оптимально со всех сторон. Что мне нет абсолютно никакой нужды пихать обработку DS18xx-ок в микроконтроллер, т.к. оно мне не даст абсолютно никакой пользы, но создаст кучу гимороя... Грустный
Rudy Академик Питер 5.8K 1K
Отв.181  28 Февр. 09, 10:29
Т.е. ты решил полностью сделать все управление от компа, совсем без проца. В общем нормально, если не жалко целый комп под это отдать. Хотя сейчас компов стареньких вагон.

Одно время были дешевые преобразователи USB->4COM+LPT, но потом как-то таинственно и полностью исчезли.

Я все-таки оставляю возможность работать и в автономе, без компа, хотя основной режим конечно с компом. На 4-х строчном дисплее данные смотреть достаточно удобно. А всяких сложных алгоритмов у меня вообще нет. На мой взгляд, они и не нужны, не понимаю, зачем люди пытаются усложнить себе жизнь. Нужны только простейшие - стабилизация давления, ну и, на всякий случай, можно сделать задание ФЧ тем или иным способом, хотя все равно ручками лучше. У меня просто сделана (пока только через комп) подача сигналов при достижении заданных условий.

А измерение давления и управление всякими силовыми устройствами как делаешь?
Kotische Академик Саратов 8.1K 2.5K
Отв.182  28 Февр. 09, 11:17, через 48 мин
А измерение давления и управление всякими силовыми устройствами как делаешь?Rudy, 28 Февр. 09, 10:29
Измерение давления в кубе, скорее всего, повешу на АЦП контроллера.
Измерение атмосферного давления, повешу на i2c контроллера.
Из "всякие силовые устройства" у меня пока только ТЭН в кубе, он рулится Брезинхемом из контроллера (это его основная задача).
Если будет клапан отбора, то скорее всего поставлю DS1824.
Altair Научный сотрудник Омск 322 75
Отв.183  05 Марта 09, 08:42
А если использовать компилятор CodeVision, то там есть встроенные функции для работы с ван-вайр.
Хотя я использую самописные, потому что не использую адресацию, а для каждого термометра - свой проводок. Не нравится мне много одинакового внешне, но разного внутри на одном проводе. Недуракоустойчиво. А я делаю для себя.

Rudy Академик Питер 5.8K 1K
Отв.184  05 Марта 09, 10:23
Со всеми алгоритмами для 1-wire я разобрался, точнее чуть поправил под себя то, что прислал steel.ne (спасибо!), можете в исходниках глянуть. Алгоритм распознавания у него написан намного лучше чем далласовский, четко и красиво.

С 1-wire только одна проблема - необходимость формирования временных диаграмм. Если бы в проце была хардовая поддержка! Для себя я бы молча воткнул бы PLD на внешний int и никаких бы проблем не было.

А во всех таких приблудах временная диаграмма функций DS реализована на линейном коде. Т.е. чтобы работало нужно выключить все прерывания. А кому такое нужно?

Я побил обрашения на кусочки меньше 90 мксек с запрещенными прерываниями внутри. Только ресет слишком длинный - 1 мсек (три куска -480,70 и 410 мксек), его делаю на таймере. Кривовато, но не смертельно.

Параллельное обращение это конечно правильнее, и DS1821 можно пользовать и простой ресет сделать. На своем проце так и сделал, но у меня датчики SPI(3-wire).
Altair Научный сотрудник Омск 322 75
Отв.185  05 Марта 09, 13:23
SPI мне тож симпатичнее, однако в ТО-92 термометров кроме Далласа я не нашел.
SerjNSK Научный сотрудник Новосибирск 2.5K 939
Отв.186  05 Марта 09, 13:33, через 11 мин
LM-ки в ТО92 делают, но они аналоговые.
steel.ne Научный сотрудник Киев 541 75
Отв.187  05 Марта 09, 14:14, через 41 мин
По поводу реалтаймовости. А какие, собственно, задачи требуют супер жесткой временной точности? Точнее чем 10 мсек, например.

ШИМ по питанию ТЭН-ов? Период сети 20 мсек.
Реакция на изменение температуры? Та, собснно, конвертация температуры занимает 750 мсек. Ну закроем клапан на 10 мсек позже. Фигня.

Отображение на экранчике? 10 раз в секунду обновили и то много будет. А это 100 мсек интервал.

Опрос кнопок? То же самое.

Что такого неотложного может случиться, что нельзя подождать даже 1 мсек с отключенными прерываниями?
Rudy Академик Питер 5.8K 1K
Отв.188  05 Марта 09, 18:49
Ну точнее чем 10 мсек требует брезенхем, ему нужно менее 4 мсек, а лучше 2-3. Схема синхронизации дает INT в момент максимума +/-1 мсек,, а менее чем через 4 мсек нужно установить сигнал на оптроне. Работаем то по полупериодам - 10 мсек.

Но дело не в этом. Без прерываний (хотя бы по сети) работать нельзя. Иначе, занимаясь выводом на LCD проспишь синхронизацию с сетью. А делать в куче точек анализ флага - спасибо.

А дальше вопрос - сколько занимает обработка INTа. Это время может произвольно добавится к любому программному временному циклу.

А если хочется усреднять данные АЦП то и его INT добавляется.

А точность формирования импульса чтения для ДС - порядка микросекунды. Отсюда и приходится извращаться и формировать циклы для него с запрещенными прерываниями. Это несложно, но противно.

Можно было бы и DSReset сделать одним куском с запрещенными прерываниями, но у меня сейчас основной таймер сделан на биппере - 2 кГц, поэтому 1 мсек мне не подождать. Просто берегу один таймер для ШИМа ключа, там может понадобится высокая частота - ШИМ с дросселем на управление 12-ти вольтовыми клапанами.
voldemar47 Доктор наук Балашов 562 57
Отв.189  20 Марта 09, 21:36
Собираюсь перейти ко второму этапу автоматизации,так называемому СТАРТ-СТОП.
Но т.к. в электронике я почти абсолютный ноль,то прошу здорово не ржать над моими рассуждениями.Как я понимаю,мне для этого нужно:два датчика температуры DS18B20,адаптер к ним под разъем на компьютере для принтера,программа Temp.Keeper и клапан,допустим от газобалонной установки автомобиля.
На прилагаемом рис.http://www.e-kit.ru/ds18b20.htm,изображен адаптер,который можно собрать самому или купить готовый,а также сам термодатчик.Куда лепить 2-ой датчик,не имею представления.
Конкретную схему,желательно монтажную нигде не нашел,даже в пионерском разделе.
Kotische Академик Саратов 8.1K 2.5K
Отв.190  20 Марта 09, 23:11
voldemar47, та схема на которую ты ссылаешся, самая простая, но и самая плохая в смысле надёжности.
Если ты будешь "топить" колонну ТЕНами, то неизбежно на корпусе колонны будет сетевая наводка, а эта схема очень чувствительна к наводкам!
Если тебе не "вломы" чуть чуть помучаться, лучше сделай нормальный адаптер!
Для его сборки рекомендую использовать микросхему MAX232N, работет очень хорошо и стоит не очень дорого.
Так же нужно внешнее питание (лучше от батареек), и несколько керамических конденсаторов.
Датчики DS18B20 все подключаются параллельно.
Проверь, что бы на твоем компьютере был в ниличии COM-порт, ибо как показала проверка, с USB-COM переходниками могут быть проблемы... :-(
Rudy Академик Питер 5.8K 1K
Отв.191  20 Марта 09, 23:12, через 2 мин
Тебе - сюда [Автоматизация для тех, кому она не по зубам.]
Вопросы - к Игорю
voldemar47 Доктор наук Балашов 562 57
Отв.192  21 Марта 09, 21:18
Вопрос дилетанта.Какой из,изображенных на рисунках термометров,правильный?
Оба они под одним именем DS18B20.
DS18B20.jpg
DS18B20.jpg Применение датчиков температуры при автоматизации. Программирование и не только. Приборы и электр(он)ика.
DS-18B20_thumb.jpg
DS-18B20_thumb.jpg Применение датчиков температуры при автоматизации. Программирование и не только. Приборы и электр(он)ика.
Илья Паяльник Новичок Иваново 2
Отв.193  21 Марта 09, 21:34, через 16 мин
Привет всем участникам форума!
Требуется консультация. Я собрал схемку для управления датчиком температуры по схеме из первого поста. Все вроде бы так, но темпкипер выдает сообщение, что невозможно инициализировать сеть.
Что это может быть: дохлый порт, датчик или неверные настройки программы.
Какой тип адаптера выбрать в темпкипере?
Заранее благодарен за подсказку.
Илья Паяльник Новичок Иваново 2
Отв.194  21 Марта 09, 21:56, через 22 мин
voldemar47
На верхнем фото изображен датчик температуры DS18B20 это деталька, входящая составной частью в изделие. На нижнем фото готовое устройство, которое подключается к COM порту компьютера. В разъеме собранная схема. А пимпочка, которая видна сверху разъема это и есть датчик, изображенный на верхнем фото.
Rudy Академик Питер 5.8K 1K
Отв.195  21 Марта 09, 21:57, через 2 мин
Вопрос дилетанта.Какой из,изображенных на рисунках термометров,правильный?
Оба они под одним именем DS18B20.voldemar47, 21 Марта 09, 21:18
Оба. Просто второй, скорее всего, уже с адаптером к СОМ порту компа.
Klim Научный сотрудник Новокузнецк 1.7K 547
Отв.196  22 Марта 09, 07:23
Привет всем участникам форума!
Требуется консультация. Я собрал схемку для управления датчиком температуры по схеме из первого поста. Все вроде бы так, но темпкипер выдает сообщение, что невозможно инициализировать сеть.
Что это может быть: дохлый порт, датчик или неверные настройки программы.
Какой тип адаптера выбрать в темпкипере?
Заранее благодарен за подсказку.
Илья Паяльник, 21 Марта 09, 21:34
У  меня такое было.Дело в том что в WINDOWS в папке system32 отсутсутствует некий файл.Мне в своё время с этим помог Игорь,переписка была на абсклабе,но не уверен что она сохранилась.Вообщем следуя его инструкциям,скачал недастающий файл из инета,установил в нужное место(какое не помню) и всё пошло.
P.S.Это если именно прога не запускается.А так может и просто обрыв(отсутствие контакта)в одном из проводов или неправильно спаян адаптер.
voldemar47 Доктор наук Балашов 562 57
Отв.197  22 Марта 09, 11:30
Rudy,Так вот этот адаптер,что продается с термометром,подойдет для автоматизации колонны? Тогда наверное нужно купить адаптер и к нему два термометра и соединить их в пераллель.
Klim Научный сотрудник Новокузнецк 1.7K 547
Отв.198  22 Марта 09, 11:44, через 14 мин
Rudy,Так вот этот адаптер,что продается с термометром,подойдет для автоматизации колонны? Тогда наверное нужно купить адаптер и к нему два термометра и соединить их в пераллель.
voldemar47, 22 Марта 09, 11:30
voldemar47
Этот адаптер не продаётся.Это просто один из вариантов собственной компоновки в корпусе разъёма COM-порта.На том сайте можно найти подробную инструкцию по его изготовлению.А датчиков можно на него повесить хоть сколько,в пределах разумного.А разумное в данном случае равняется 225 штукам.
Rudy.Я не ошибаюсь?
Rudy Академик Питер 5.8K 1K
Отв.199  22 Марта 09, 15:02
Теоретически можно много, но практически столько не навесишь из-за емкости линии. Но штук 8 можно спокойно, реально - порядка 32.