Bluetooth термометр
Одного ранку я прокинувся і захотів дізнатися температуру на вулиці. Замість того, щоб йти до господарського магазину і купувати скляний термометр, я вирішив зробити саморобний бездротовий термометр. У центрі плати знаходиться мікроконтролер PIC12F675 в корпусі SO8. У правій частині плати знаходиться лінійний джерело живлення (LP2950), нижче центру знаходиться 1-Wire датчик температури DS18B20, а в лівій частині знаходиться TTL Bluetooth модуль від Sure.
Віддаючи перевагу стандартним протоколам, я вирішив передавати дані про температуру по Bluetooth SPP (Serial Port Protocol, протокол послідовного порту), а не по XBee або по іншій подібній бездротовій архітектурі. Незважаючи на те, що Bluetooth споживає більше, ніж XBee модуль, його перевагою є те, що для прийому використовується стандартне обладнання. Майже всі сучасні ноутбуки мають вбудований Bluetooth модуль, що дозволяє використовувати їх в якості приймача сигналу.
Я знайшов Bluetooth модуль від Sure, який я купив кілька років тому для іншого проекту. Для спрощення макетування модуль для поверхневого монтажу був встановлений на саморобну друковану плату з BLS штифтами. Оскільки у мене немає паяльної станції з феном, щоб відпаювати модуль, я замовив ще один модуль GP-GC021. Нижче показаний модуль, з яким я спочатку працював, а на фото вище показаний нещодавно придбаний модуль.
Я вирішив використовувати мікроконтролер PIC12F675 тільки тому, що він був у мене. Ізначально я хотів використовувати внутрішній генератор 4 МГц, але пізніше я дізнався, що Bluetooth модуль передає дані зі швидкістю 9600 біт/с, і основна частота системи повинна бути 8 МГц, щоб не відставати і передавати дані з потрібною швидкістю.
Як і в усіх моїх проектах, схема і друкована плата були зроблені в Altium Designer. За ці роки я спробував працювати в різних САПР (Система автоматизованого проектування), включаючи Eagle, ExpressPCB, і EdwinXP, однак я вважаю, що Altium на голову вище всіх інших програм. Якщо ви простий любитель, то можливо Altium буде занадто дорогим для вас, але багато коледжів і університетів купують навчальну ліцензію. В коледжі Оканаган є плаваюча ліцензія, яка дозволяє студентам використовувати Altium на будь-якому комп'ютері, незалежно від того, находимося ми на території університету чи ні. Поки я не працював в Altium, я боровся з САПР на протязі багатьох років. З Altium в мене теж були невеликі проблеми, але в цілому, в ньому приємно працювати.
Примітки:
- програмування не є моєю сильною стороною, тому прошивка написана в PicBasic. В архіві знаходяться готові до прошивки HEX файли, тому якщо ви хочете змінити прошивку, вам потрібно мати ProtonIDE для компіляції.
- якщо ви будете робити плату по доданим Gerber файлам, зверніть увагу на те, що контакти для F1 (плавкий запобіжник на лінії VCC датчика) занадто маленькі.
- вся інформація в статті надається без гарантій. Автор не несе ніякої відповідальності.
- якщо ви будете використовувати цей проект або його частину у своєму проекті, то вказуйте автора.
Завантажити файли проекту
Список радіоелементів
Обозначення | Тип | Номінал | Кількість | Примітка | |||
---|---|---|---|---|---|---|---|
Основна схема. | |||||||
U1 | Bluetooth модуль | 1 | |||||
U2 | МК PIC 8-біт |
PIC12F675
|
1 | ||||
P2 | Датчик температури |
DS18B20
|
1 | ||||
С1, С3 | Конденсатор | 22 пФ | 2 | ||||
С2 | Конденсатор | 0.1 мкФ | 1 | ||||
R1, R2, R4 | Резистор |
4.7 кОм
|
3 | ||||
R7, R8 | Резистор |
0 Ом
|
2 | ||||
Y1 | Кварцовий резонатор | 8 МГц | 1 | ||||
F1 | Запобіжник | 0.2 А | 1 | ||||
P3 | Роз'єм | ICSP Port | 1 | ||||
Блок живлення. | |||||||
U3 | Лінійний регулятор |
LP2950-33
|
1 | ||||
D1 | Діод | 1 | |||||
С4 | Електролітний конденсатор | 100 мкФ 6.3 В | 1 | ||||
С5 | Конденсатор | 0.1 мкФ 50 В | 1 | ||||
Р4 | Роз'єм | 1 |