in english
по-русски
eFind.ru
Поиск электронных компонентов на складах
Промышленная электроника

USB Термометр

USB Термометр

USB Термометр

Хай пипл! Вобщем попросил меня один мужик сделать ему USB термометр, сразу мне было лень, но потом я подумал, что мне такая штука тоже пригодиться. Полез я в инет чтобы найти схему, нашел одну на ATmega16, но кто же будет ставить этого монстра в какой то жалкий ЮСБ термометр?, не знаю кто но точно не я)))). Далее нашел схемку на ATtiny48, но у меня такого в наличии не было (просто я тиньки не юзаю) и софт для компа мне тоже в нем не понравился (температура в Цельсиях просто отображалась в трее). После этого я решил сам его разработать, к тому же я доделал последний заказ, выручив за него неплохую зелень и поэтому у меня было хорошее настроение))).

Итак, взглянув на свой стол, я увидел ATmega8, которая была впаяна на макетную плату и цифровой термодатчик DS18B20, у которого пределы измерения температуры от -55 до +125 градусов Цельсия. Осталось найти немного рассыпухи. Вобщем вот список всего что нужно для термометра:

  1. Микроконтроллер ATmega8 (очень желательно без индекса “L” в конце).
  2. Температурный датчики DS18B20, нужен без индекса PAR в конце, иначе макс. температура будет +85 град.
  3. Кварц 12 МГц.
  4. 2 конденсатора 22 Пф и один конденсатор по питанию (10V и не менее 100 Мф, потому что у USB на линии питания просто ужасные перепады напряжения).
  5. 2 резистора 68 Ом, 1 резистор 200 Ом, 1 резистор около 2,2 – 4,7 кОм, 1 резистор 10кОм и 1 резистор 1,5кОм.
  6. 2 стабилитрона 3.6V.
  7. Штекер или разъем USB.
  8. Светодиод.
  9. Ну и печатка или макетка, на которой это всё будет собрано.

Схема устройства:

 

Схема ОЧЕНЬ простая. Ничего сложного, на мой взгляд нету. Слева расположены все 4 контакты USB. Конденсатор С3 – это тот самый кондер по питанию. Стабилитроны VD1 и VD2 снижают напряжение на линии передачи данных до 3,3В. Датчик DS18B20 Можно не ставить на плату, а вывести на нужное место, вообще длина провода может быть до 100 метров, но я не советую больше 50м. Светодиод меняет свой состояние(зажигается/тухнет) при каждом запуске измерения температуры. Если он с хаотической скоростью мигает, тогда с термодатчик работает нормально, если постоянно светиться или не светиться – с датчиком проблемы (неправильно подключен, нерабочий,  или очень длинный провод, возле которого сильные электромагнитные помехи). Справа расположен разъем для внутрисхемного программирования микроконтроллера. Прошивка для него - USBThermometer\MCU\USB_thermometer\default\main.hex . После заливки прошивки Вам нужно правильно выставить фьюзы, иначе устройство не будет работать, в STK500 из AVR Studio это выглядит так:

 

Если вы правильно собрали устройство и правильно прошили МК, то при подключению к компу через ЮСБ Windows найдет новое устройство и спросит где драйвер. Он расположен в папке USBThermometer\windows-driver\, куда Вам и надо указать путь. Когда установиться драйвер перезагрузите ПК. Потом запустите программу USBThermometer.exe. Если устройство не подключено то вместо температуры будет написано «Не подкл.» и при перетаскивании окно будет немножко «подвисать» каждую секунду потому что программа будет каждую секунду обновлять данные об подключенных устройствах пока не найдет этот термометр. Если Вы подключите устройство, то в трее выскочит сообщение «Термометр подключен», окно подвисать уже не будет, и Вы увидите такое:

 

Ещё, что очень удобно, есть функция «Мини-окно» и «Поверх всех окон». Я  обычно устанавливаю все 2 галочки и получаться вот что:

 

Вся серая область это и есть окно программы в «мини-виде» (бело-синий фон с бульбашками – то рабочий стол). Нравиться :) ?. Это удобно потому, что окно маленькое (96х198), постоянно поверх всех окон и не мешается при использовании других приложений. К тому же программа не отображается на панели задач, а только в трее и, наведя курсор на иконку программы, можно увидеть температуру в Цельсиях:

 

Ну… вот вроде и все))). Этот термометр я проверял на нескольких стационарных ПК, ноутбуках и нетбуках под операционными системами Windows Home Edition, Windows Professional и Windows Vista. Всё работало отлично! Только вот на висте, при температуре на термодатчика ниже -9 и выше 99 град.  не было видно буквы «С» (там где температура в Цельсиях), потому что я выбрал шрифт для отображения температуры «Comic Sans MS», но я не думаю что для кого то это проблема))).

Программа, прошивка, исходники и драйвер: Скачать

PS: Если у Вас нет программатора и Вам нужен уже прошитый микроконтроллер или Вы хотите купить уже готовый термометр, то обращайтесь ко мне на e-mail:  devices2000 {сцобака} ya.ru  .

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

Автор проекта: Бражников Михаил.

devices2000 {сцобака} ya.ru




1999-2010. Сайт ПАЯЛЬНИК (cxem.net). При использовании материалов с данного сайта, обязательна ссылка на сайт ПАЯЛЬНИК и первоисточник! Rambler's Top100