Вопросы и замечания по статьям и схемам, представленным на нашем сайте

При поддержке РадиоКОТструктор.ру


Ответить

Термометр: меньше не бывает?

Вт апр 27, 2010 23:08:38

http://radiokot.ru/circuit/digital/home/61/
Есть пару вопросов по етой схеме,ответьте пожайлуста.
1-Что за индикатор использован в статье автора?(маркировка)
2-можно ли ету схему запитать от низкого напряжения?(поставить-микроконтролер с буковкой L)
3-какие минимальные робочие напряжения для етой схемы?(микросхема,термодатчик)(какой из датчиков будет точнее измерять напряжение?маркировку)
4-обезательно впаивать резистор и конденсатор?зачем оны нужны?
5-микроконтролер программировался уже впаяным в схему?(или какимто другим способом?)
К чему ети вопросы-да схемка маленькая,но-питание 5 вольт-ето три пальчиковых батарейки...которые больше самого термометра...неувязочка.Хотелось бы собрать ету схему с питание от компьютерной круглой батарейки.

Re: Термометр: меньше не бывает?

Ср апр 28, 2010 09:23:18

ИМХО, предел миниатюризации не достигнут, надо попробовать сделать термометр с применением жидкокристалического индикатора - в толщину меньше станет девайс

Re: Термометр: меньше не бывает?

Ср апр 28, 2010 10:59:18

тут давеча новости от NXP в мыло пришли - сделали они ARM Cortex в корпусе 2х2 мм. думаю, если взять его за основу, можно-таки будет достичь предела :)))

Re: Термометр: меньше не бывает?

Чт апр 29, 2010 18:01:16

Товарищи можно ответы по существу :o

Re: Термометр: меньше не бывает?

Чт апр 29, 2010 18:05:24

love-chat писал(а):http://radiokot.ru/circuit/digital/home/61/
Хотелось бы собрать ету схему с питание от компьютерной круглой батарейки.

Надолго батарейки не хватит. Максимум - один день и то под сомнением :)
А отсутствие токоограничивающих резисторов, это вообще плохо. Так делать нельзя. Стремясь за миниатюризацией, не стоит забывать о надёжности работы устройства и яркости (качестве) свечения индикаторов. Оно будет плохим и сильно зависящим от напряжения питания устройства.

Re: Термометр: меньше не бывает?

Пт апр 30, 2010 12:22:12

Скажите, а где и что поменять в прошивке, чтобы можно было использовать индикатор с общими анодами?

Re: Термометр: меньше не бывает?

Вт май 04, 2010 13:51:47

love-chat писал(а):Есть пару вопросов по этой схеме,ответьте пожалуйста.
1-Что за индикатор использован в статье автора?(маркировка)
2-можно ли эту схему запитать от низкого напряжения?(поставить-микроконтроллер с буковкой L)
3-какие минимальные рабочие напряжения для этой схемы?(микросхема, термодатчик)(какой из датчиков будет точнее измерять напряжение?маркировку)
4-обязательно впаивать резистор и конденсатор? зачем они нужны?
5-микроконтроллер программировался уже впаяным в схему?(или каким-то другим способом?)
К чему эти вопросы-да схемка маленькая, но-питание 5 вольт-это три пальчиковых батарейки...которые больше самого термометра...неувязочка.Хотелось бы собрать эту схему с питание от компьютерной круглой батарейки.
1-RL-T3610GDAW/D15
2-эксперимент с буквой L не производил, у обычного tiny2313 питание от 2,7 до 5,5 В.
3-для тини минимум 2,7В, для DS18S20 и DS18B20 минимум 3,0В
4-резистор 4,7кОм - подтягивающий для шины 1-wire. Конденсатор - в зависимости от источника питания. Если от батарейки возможно и не ставить, если от блока питания то можно добавить еще и электролит.
5-МК прошивается прямо на плате. Литиевая компьютерная батарейка выдает 3,0В. МК работать будет, а вот термодатчик ?

Фотки сделаны при питании от батареек (4,0В) три подсевшие батарейки.

Для уменьшения ширины у МК перед монтажом ножки подгибаются под корпус.

Shushik писал(а):... что поменять в прошивке, чтобы можно было использовать индикатор с общими анодами?
в файле mini-term.c строки: 50-68, 72-90, 99, 119, 124, 126. Инвертировать нужно значения и действия. Нужно подробнее?

Re: Термометр: меньше не бывает?

Вт май 04, 2010 15:39:10

Danko Да, желательно поподробнее :)

Re: Термометр: меньше не бывает?

Ср май 05, 2010 11:07:00

Shushik, для сравнения выкладываю обе версии.

в папке plus схема, плата, фузы.
Вложения
Mini-term_tiny2313_DS18x20_3LED_OK.zip
(62.33 KiB) Скачиваний: 2135
Mini-term_tiny2313_DS18x20_3LED_OA.zip
(62.96 KiB) Скачиваний: 1980

Re: Термометр: меньше не бывает?

Ср май 05, 2010 19:07:40

Danko Огромнейшее спасибо!!!

Re: Термометр: меньше не бывает?

Ср май 05, 2010 20:38:26

ARV писал(а):тут давеча новости от NXP в мыло пришли - сделали они ARM Cortex в корпусе 2х2 мм. думаю, если взять его за основу, можно-таки будет достичь предела :)))

из пушки по воробьям называется. нет смысла ставить ARM для термометра. еще и ос на него забацать.

Re: Термометр: меньше не бывает?

Пн май 31, 2010 18:44:36

Хм... странно, собрал на макетке. Подключил питание, вроде работает, но раз в секунду (а может и чаще) показывает на индикаторе f_1
То есть сначала температура - 26.3
в следующую секунду надпись -F 1
Не подскажете из-за чего это может быть?

Проблема устранена. Плавал контакт между data и vcc через резистор

Re: Термометр: меньше не бывает?

Ср июн 02, 2010 20:44:53

скажите, а что будет на индикаторе при отрицательной температуре?

Re: Термометр: меньше не бывает?

Чт июн 03, 2010 11:06:16

можно ли питать термометр от таблеточных батареек

Re: Термометр: меньше не бывает?

Чт июн 03, 2010 11:12:13

uyra писал(а):можно ли питать термометр от таблеточных батареек

Можно, но не долго. Точнее батареек не на долго хватит.

Re: Термометр: меньше не бывает?

Чт июн 03, 2010 11:14:04

Лютик писал(а):скажите, а что будет на индикаторе при отрицательной температуре?

В статье есть файл для ПРОТЕУС,запусти и увидешь.

Re: Термометр: меньше не бывает?

Чт июн 03, 2010 14:55:04

мне для этого еще и протеус качать и устанавливать :shock: ?! может проще просто ответить, я колеблюсь собирать или нет, т.к. показания отрицательной температуры меня тоже интрересуют

Re: Термометр: меньше не бывает?

Чт июн 03, 2010 17:39:07

Ограничений по индикации нет. Все то, что датчик измерит то термометр и покажет.
Изображение

Re: Термометр: меньше не бывает?

Пт июн 04, 2010 10:10:12

Danko писал(а):Ограничений по индикации нет. Все то, что датчик измерит то термометр и покажет.
Изображение

спасибо, будем собирать :))

Re: Термометр: меньше не бывает?

Пн июн 07, 2010 11:09:59

Собрал девайс с 2-мя датчиками + прикрутил светик, который горит с показаниями одного датчика, и не горит с показаниями второго (что бы знать, какой датчик в данный момент работает). Заметил такой проблем: в какой-то момент светик начинает работать уже с другим датчиком, т.е. показания первого датчика остаются на индикаторе ещё на 2 сек., а светик гаснет, потом появляются показания второго датчика, а с ними зажигается светик... Что может быть? Подтянул ресет ч/з 10к к + питания (кнопку сброса поставил), так после этого таких сбоев стало меньше (1-2 раза в день, до этого - 10-15 раз в день а то и больше).
Вот думаю, как отловить этот момент?

вот код основного цикла:
Код:
 while (1) {
               
        if (ds18x20_devices >= 1) {  // если обнаружено больше одного датчика

                for (i=0;i<ds18x20_devices;) {
                        if (rom_code[i][0] == DS18B20_FAMILY_CODE){
                             temperature=ds18b20_temperature(&rom_code[i][0]);
                        }
                        if (rom_code[i][0] == DS18S20_FAMILY_CODE){
                             temperature=ds18s20_temperature(&rom_code[i][0]);
                        }
                        if (temperature!=-9999){
                            view_term();
                            if (ds18x20_devices > 1){
                                led_ON=~led_ON;     
                            }                       
                        }
                        delay_ms(2000);
                        i++;
                }
        }

Может быть в моём случае есть смысл читать показания 1-го датчика в одну переменную, а второго - в другую, и, чётко зная, с каким датчиком идёт работа, светить или не светить диодом?
Или переписать основной цикл примерно так:
Код:
[code] while (1) {
               
   if (ds18x20_devices = 2) {  // если обнаружено 2 датчика
         i = 0;
         if (rom_code[i][0] == DS18B20_FAMILY_CODE){
            temperature=ds18b20_temperature(&rom_code[i][0]);
         }
         if (rom_code[i][0] == DS18S20_FAMILY_CODE){
            temperature=ds18s20_temperature(&rom_code[i][0]);
         }
         if (temperature!=-9999){
            view_term();
         }
         led_ON = 1;    // зажигаем диод                           
         delay_ms(2000);

         i = 1;
         if (rom_code[i][0] == DS18B20_FAMILY_CODE){
            temperature=ds18b20_temperature(&rom_code[i][0]);
         }
         if (rom_code[i][0] == DS18S20_FAMILY_CODE){
            temperature=ds18s20_temperature(&rom_code[i][0]);
         }
         if (temperature!=-9999){
            view_term();
         }
         led_ON = 0;    // гасим диод                           
         delay_ms(2000);

         }

   if (ds18x20_devices = 1) {  // если обнаружен 1 датчик
         if (rom_code[0][0] == DS18B20_FAMILY_CODE){
            temperature=ds18b20_temperature(&rom_code[0][0]);
         }
         if (rom_code[0][0] == DS18S20_FAMILY_CODE){
            temperature=ds18s20_temperature(&rom_code[0][0]);
         }
         if (temperature!=-9999){
            view_term();
         }
         led_ON = ~led_ON;    // просто мигаем каждые 2000 ms                           
         delay_ms(2000);

         }
   }
[/code]

Какой вариант предпочтительней? Кто что сможет подсказать?
Ответить