Tuesday, 31 January 2017
Saturday, 28 January 2017
Сверхрегенеративный китайский приемник ХХ-ХХ-5V.
Частота: 434МГЦ
Модуляция : ООК
Скорость передачи данных: 10КГЦ макс
Напряжение питания : 5В
Ток потребления : 6...8 мА
Габариты: 31x15x7 мм
Цена (в комплекте с передатчиком): ~0,70$
Приемник собран на двух ВЧ транзисторах 2SC3356 (R25-маркировка ) и операционнике LM358. Первый транзистор усиливает ВЧ сигнал перед тем как он поступает на сверхрегенератор на втором транзисторе. Частота приема сверхрегенератора подстраивается катушкой L1. Полезный сигнал, выделяемый сверхрегенератором, фильтруется (убирается ВЧ составляющая и шумы за полосой модуляции) и поступает на схему выделения данных на LM358. Первая половина LM358 усиливает полезный сигнал вторая ограничивает и вводит порог. Следствием введения порога является низкий уровень шумов при отсутствии сигнала, что на мой взгляд является недостатком этой схемы, так как приводит к снижению чувствительности приемника.
Уязвимым местом приемника являются цепи питания. Любая помеха из них через цепи сверхрегенератора попадут на вход схемы выделения данных и могут воспрепятствовать правильному приему сигнала. Для лечения нужно использовать RC фильтр по питанию 10 Ом последавательно и 100мкФ 10В паралельно питанию со стороны приемника.
Благодаря Алиэкспресс у меня оказались два комплекта приемник-передатчик. Что касается качества сборки , то на одной из плат приемника отсутствовал входной транзистор 2SC3356 а также входная емкость и резистор в базе к нему. Если проверять приемник при помощи передатчика из комплекта , то осутствие входного усилителя можно и не заметить , что и случилось в моем случае. Поэтому необходимо обязательно проверить плату на наличие всех элементов при помощи одной из качественных фотографий из интернета.
Проверка приемников на генераторе сигналов выявила еще одну беду. Оба были настроенны на разные частоты , но ни один на 433,92МГЦ. В итоге один оказался настроенным на 429МГЦ , второй - на 431МГЦ. Подстройка была произведена при помощи генератора сигналов катушкой L1. В случае отсутствия гс, можно подстроить по передатчику, по максимуму сигнала на емкости С9.
Проверка чувствительности дала значения - 1 образец-1мкВ: 2 образец - 15мкВ. Почему? Все просто и по китайски - разные номиналы резисторов в объвязках LM358 в разных образцах. Отсюда разные значения величины порога.
Вывод: Если у Вас нет под рукой набора деталей, генератора сигналов, паяльника и Вы ищите надежное решение Вашей проблемы, то это не Ваш выбор. Включил и работай скорее всего не получится.
Wednesday, 25 January 2017
Посылка из Китая : Micro SD Storage Board, NANO 3.0 controller Terminal Adapter, Arduino Pro Mini 3.3V/8MHz .
Посылка пришла в стандартой упаковке - желтый пакет внутри которого защитные шарообразные полости заполненные воздухом:
Платы упакованы в герметичные антистатические пакеты:
NANO 3.0 controller Terminal Adapter:
Плата предназначена для установки Arduino Nano 3 с контактами под закрутку, но я планирую ее для Arduino Pro Mini. Плата двухсторонняя , отверстия метализированные, все выводы промаркированы без зеркальной выворотки, качество платы отличное.
Arduino Pro Mini 3.3V/8MHz:
Плата предназначена для работы при напряжении питания 3,3В. Кварцевый резонатор - 8МГЦ.
Выводы промаркированы без зеркальной выворотки, плата помыта, качество пайки отличное.
Micro SD Storage Board:
Плата работает при напряжении питания от 3,6В.Имеет преобразователь уровня 5-3,3В, стабилизатор на 3,3В. Выводы промаркированы без зеркальной выворотки, плата помыта за исключением выводов разъема, качество пайки отличное. SD карта вставляется без проблем в картоприемник, фиксируется и при повторном нажатии легко вынимается из картоприемника.
Платы заказывал здесь. Доставка около 4х недель а то и быстрее. С доставкой и качеством изготовления плат проблем не было.
Платы упакованы в герметичные антистатические пакеты:
NANO 3.0 controller Terminal Adapter:
Плата предназначена для установки Arduino Nano 3 с контактами под закрутку, но я планирую ее для Arduino Pro Mini. Плата двухсторонняя , отверстия метализированные, все выводы промаркированы без зеркальной выворотки, качество платы отличное.
Arduino Pro Mini 3.3V/8MHz:
Плата предназначена для работы при напряжении питания 3,3В. Кварцевый резонатор - 8МГЦ.
Выводы промаркированы без зеркальной выворотки, плата помыта, качество пайки отличное.
Micro SD Storage Board:
Плата работает при напряжении питания от 3,6В.Имеет преобразователь уровня 5-3,3В, стабилизатор на 3,3В. Выводы промаркированы без зеркальной выворотки, плата помыта за исключением выводов разъема, качество пайки отличное. SD карта вставляется без проблем в картоприемник, фиксируется и при повторном нажатии легко вынимается из картоприемника.
Платы заказывал здесь. Доставка около 4х недель а то и быстрее. С доставкой и качеством изготовления плат проблем не было.
Wednesday, 18 January 2017
Результаты тестирования платы датчика относительной влажности SI7021 на плате GY-21 из Китая.
Несмотря на то, что сама микросхема работает в диапазоне питающих напряжений 1.9-3,6В, плата работает в диапазоне от 3,6 до 5 В. Смысл установки разработчиком стабилизатора 3,3В(LM6206-3.3) и преобразователей уровня ME2N7002KW-G для шины I2C не ясен поскольку платы Arduino имеют стабилизатор на 3,3В. В этом смысле плата рассмотренная в предыдущем посте намного проще и удобнее.
Испытания проводились по методике изложенной в посте Простой способ проверки датчиков относительной влажности (75%). А также результаты измерений сравнивались с показаниями относительной влажности метеостанции Орегон BAR388HG (35%). В итоге отличие показаний от образцовых составило +6% (по даташиту не более +- 3%).
Ничего не понимаю. Но иногда сдается мне ,что китайцы сплавляют нам забракованные партии микросхем, купленные по дешевке в китайском "Юном Технике".
Испытания проводились по методике изложенной в посте Простой способ проверки датчиков относительной влажности (75%). А также результаты измерений сравнивались с показаниями относительной влажности метеостанции Орегон BAR388HG (35%). В итоге отличие показаний от образцовых составило +6% (по даташиту не более +- 3%).
Ничего не понимаю. Но иногда сдается мне ,что китайцы сплавляют нам забракованные партии микросхем, купленные по дешевке в китайском "Юном Технике".
Labels:
Arduino,
GY-21,
schematic,
Si7021,
влажность,
датчик,
датчик относительной влажности,
Измерение
Monday, 16 January 2017
Результаты тестирования платы датчика относительной влажности HTU21D из Китая.
Прежде хочу обратить внимание на перемычку на плате , отмеченную белым прямоугольником. Обязательно убедитесь в ее наличии (некоторые китайские производители ее не ставят). В противном случае утройство работать не будет. Перемычка подключает (или отсоединяет) резисторы шины I2C к источнику питания +3,3В. Кроме того, максимальное напряжение питания не должно превышать +3,6В.
Испытания проводились по методике изложенной в посте Простой способ проверки датчиков относительной влажности. А также результаты измерений сравнивались с показаниями относительной влажности метеостанции Орегон BAR388HG. В итоге отличие показаний от образцовых не превысило +1% (по даташиту не более +- 3%).
Friday, 13 January 2017
Простой способ программирования плат Arduino без IDE Arduino.
Прежде всего скачиваем программу avrdude.exe, например, здесь: http://download.savannah.gnu.org/releases/avrdude/
кликнув на avrdude-6.3-mingw32.zip (последняя версия на данный момент). Распаковываем скачанный файл в папку, которую назовем Avrdude. В папке должно быть два файла - собственно avrdude.exe , а также avrdude.conf .
Далее создаем bat-файл , который собственно и будет управлять процессом программирования платы Arduino.
Отключаем вывод команд в окне командной строки:
@ECHO OFF
Назначаем переменной proj_name значение соответствующее имени Вашего проекта (слева и справа от знака равенства пробелов быть не должно!):
set proj_name=YOUR_PROJECT
Выводим имя Вашего проекта в заглавие окна командной строки:
title %proj_name%
Определяем местоположение bat-файла. Bat-файл я располагаю в папке Release формируемом в AtmelStudio в месте с файлами YOUR_PROJECT.hex и YOUR_PROJECT.eep. Вы же можете расположить его где угодно главное чтобы в этой же папке присутствовали YOUR_PROJECT.hex и YOUR_PROJECT.eep.
set batch_file=%~dp0
Задаем полный путь к нашим програмным файлам hex и eep:
set hex_file=%batch_file%%proj_name%.hex
set eep_file=%batch_file%%proj_name%.eep
Указываем тип микроконтроллера (ATMEGA328P для плат UNO & NANO) в обозначениях avrdude:
set partmun=m328p
Указываем скорость обмена с загрузчиком платы (для UNO - 115200, NANO - 57600 , там где нужно - убрать rem; где не нужно вставить ):
rem NANO
set bit_rate=57600
rem UNO
rem set bit_rate=115200
Указываем полный путь к папке, где мы сохранили avrdude
cd <YOUR_FULL_PATH_TO_AVRDUDE>
например:
cd С:\Avrdude
Указываем что делать avrdude
:loop
avrdude -p%partmun% -carduino -PCOMXX -b%bit_rate% -D -Uflash:w:%hex_file%:i -Ueeprom:w:%eep_file%:i
pause
goto loop
Вat файл выполняется в бесконечном цикле с паузой после программирования платы. Если вы внесли изменения в hex и eep файлы, то просто жмем "ввод" и заново программируем плату Arduino. Еще один момент связан с -PCOMXX. Этот параметр указывает на последовательный порт к которому подключена ваша плата. Его надо определить через Диспетчер устройств компьютера и исправить. Например, если у вас подключено к СОМ12, то надо исправить на -РСОМ12
В итоге bat файл примет вид:
кликнув на avrdude-6.3-mingw32.zip (последняя версия на данный момент). Распаковываем скачанный файл в папку, которую назовем Avrdude. В папке должно быть два файла - собственно avrdude.exe , а также avrdude.conf .
Далее создаем bat-файл , который собственно и будет управлять процессом программирования платы Arduino.
Отключаем вывод команд в окне командной строки:
@ECHO OFF
Назначаем переменной proj_name значение соответствующее имени Вашего проекта (слева и справа от знака равенства пробелов быть не должно!):
set proj_name=YOUR_PROJECT
Выводим имя Вашего проекта в заглавие окна командной строки:
title %proj_name%
Определяем местоположение bat-файла. Bat-файл я располагаю в папке Release формируемом в AtmelStudio в месте с файлами YOUR_PROJECT.hex и YOUR_PROJECT.eep. Вы же можете расположить его где угодно главное чтобы в этой же папке присутствовали YOUR_PROJECT.hex и YOUR_PROJECT.eep.
set batch_file=%~dp0
Задаем полный путь к нашим програмным файлам hex и eep:
set hex_file=%batch_file%%proj_name%.hex
set eep_file=%batch_file%%proj_name%.eep
Указываем тип микроконтроллера (ATMEGA328P для плат UNO & NANO) в обозначениях avrdude:
set partmun=m328p
Указываем скорость обмена с загрузчиком платы (для UNO - 115200, NANO - 57600 , там где нужно - убрать rem; где не нужно вставить ):
rem NANO
set bit_rate=57600
rem UNO
rem set bit_rate=115200
Указываем полный путь к папке, где мы сохранили avrdude
cd <YOUR_FULL_PATH_TO_AVRDUDE>
например:
cd С:\Avrdude
Указываем что делать avrdude
:loop
avrdude -p%partmun% -carduino -PCOMXX -b%bit_rate% -D -Uflash:w:%hex_file%:i -Ueeprom:w:%eep_file%:i
pause
goto loop
Вat файл выполняется в бесконечном цикле с паузой после программирования платы. Если вы внесли изменения в hex и eep файлы, то просто жмем "ввод" и заново программируем плату Arduino. Еще один момент связан с -PCOMXX. Этот параметр указывает на последовательный порт к которому подключена ваша плата. Его надо определить через Диспетчер устройств компьютера и исправить. Например, если у вас подключено к СОМ12, то надо исправить на -РСОМ12
В итоге bat файл примет вид:
@ECHO OFF set proj_name=YOUR_PROJECT title %proj_name% set batch_file=%~dp0 set hex_file=%batch_file%%proj_name%.hex set eep_file=%batch_file%%proj_name%.eep rem NANO set bit_rate=57600 rem UNO rem set bit_rate=115200 set partmun=m328p cd <YOUR_FULL_PATH_TO_AVRDUDE> :loop avrdude -p%partmun% -carduino -PCOMXX -b%bit_rate% -D -Uflash:w:%hex_file%:i -Ueeprom:w:%eep_file%:i pause goto loop
Thursday, 5 January 2017
Простой способ проверки датчиков относительной влажности.
Если Вы приобрели датчик относительной влажности, например AM2320 на Алиэкспрессе, и у Вас появилось сомнение в правильности его показаний, то есть простой способ его поверки . Все, что для этого будет необходимо, Вы найдете у себя на кухне:
банка на 0,2 литра под завинчивающуюся крышку, сама крышка, поваренная соль (NaCl), вода. Кроме того возможно понадобятся плата Arduino Nano, шилд для Arduino Nano, ноутбук, USB кабель.
Итак начинаем. Заполните банку водой приблизительно на одну четверть. Небольшими порциями растворяйте в воде соль до тех пор, пока соль не перестанет расстворятся (должен получится насыщенный раствор соли в воде). Затем помещаете Ваш датчик в банку и завинчиваете крышку. Выждите приблизительно полчаса. Разность между 75% и показаниями Вашего датчика и будет его погрешность измерения.
Если Вы являетесь счастливым обладателем хлорида магния (MgCl2 , пищевая добавка E511), то у Вас есть шанс проверить датчик в точке 33%. Для этого надо взять другую банку на 0,2 литра и повторить все, что было для поваренной соли.
К слову, из трех купленных мною на Алиэкспрессе датчиков AM2320 только один соответствовал условиям из даташита (+ - 3% при 25С)
банка на 0,2 литра под завинчивающуюся крышку, сама крышка, поваренная соль (NaCl), вода. Кроме того возможно понадобятся плата Arduino Nano, шилд для Arduino Nano, ноутбук, USB кабель.
Итак начинаем. Заполните банку водой приблизительно на одну четверть. Небольшими порциями растворяйте в воде соль до тех пор, пока соль не перестанет расстворятся (должен получится насыщенный раствор соли в воде). Затем помещаете Ваш датчик в банку и завинчиваете крышку. Выждите приблизительно полчаса. Разность между 75% и показаниями Вашего датчика и будет его погрешность измерения.
Если Вы являетесь счастливым обладателем хлорида магния (MgCl2 , пищевая добавка E511), то у Вас есть шанс проверить датчик в точке 33%. Для этого надо взять другую банку на 0,2 литра и повторить все, что было для поваренной соли.
К слову, из трех купленных мною на Алиэкспрессе датчиков AM2320 только один соответствовал условиям из даташита (+ - 3% при 25С)
Tuesday, 3 January 2017
Как красиво оформить код в Blogger.
2. Открываете сайт hilite.me
3. Копируете код из AtmelStudio 7 в буфер обмена.
4. Загружаете код в окно Source Code
5. Выбираете Language (язык программирования), Style (стиль редактора), Отображать или нет номера строк (Line Numbers) и жмете на HighLight! В окне Preview отобразится код как он появится в Blogger.
6. Копируете html код из окна HTML в буфер обмена.
7. В окне редактора Blogger переключатель Compose/HTML ставите в положение HTML.
8. Из буфера обмена делаете вставку в самый конец появившегося кода HTML
9. Возвращаете переключатель Compose/HTML ставите в положение Compose.
10. Любуетесь Вашим кодом в окне Blogger.
#include <avr/io.h> #include <stdio.h> int main(void) { char string[32]={0}; while (1) { sprintf(string,"%s","Hello, World!"); } }
Subscribe to:
Posts (Atom)