После вставки карты следует обязательно перезагрузить станцию и проследить, чтобы после загрузки в первую очередь появилась надпись SD card Ok. Если вместо этого появляется сообщение об ошибке инициализации SD card failed, то выключить и включить питание станции необходимо еще раз. Если карта инициализировалась верно, то в файл data.txt на ней запишется строка Arduino meteostation data . Если этот файл на карте не существовал, то он будет создан заново, иначе указанная строка просто запишется в него еще раз, сигнализируя о том, что станция включалась.
Подтверждение тому, что запись действительно идет успешно, можно получить, если проследить за поведением станции в момент, соответствующий очередному сеансу записи, — не должно появиться сообщение File open failed!, которое возникает, если карта просто отсутствует в слоте. Если же карта вставлена, но инициализация прошла неудачно, то в момент записи станция «повиснет» примерно на 12 секунд — таковы особенности работы библиотеки SD.
Повторю — для успешной записи на карту карта должна быть вставлена в слот до включения питания станции. Следует взять за правило перезапускать станцию после каждого извлечения/вставки карты. Предоставляю читателю самому поэкспериментировать с модификацией программы, которая позволила бы избежать таких ограничений. Вероятно, для этого придется привлечь какую-нибудь другую библиотеку по работе с SD-картами в Arduino — особенность прилагаемой библиотеки SD в том, что если карта однажды была инициализирована, то после извлечения и последующей ее вставки при работающем контроллере от программы невозможно добиться не только сообщений об ошибках, но не получается даже принудительно инициализировать карту заново.
Конструкция
Все элементы разработанных нами схем по рис. 22.1 и 22.5 продаются в комплекте с соединительными кабелями, исключение составляют только дисплеи. В «Амперке» имеется в продаже специальная расширительная плата Troyka Shield, позволяющая подключать подобную периферию. Таким образом, самый простой вариант создания законченной конструкции главного модуля станции заключается в приобретении этой платы и установке друг на друга последовательно трех плат (Arduino Uno, Troyka Shield и Wireless Shield). Ha Wireless Shield, которая должна быть сверху этого «бутерброда» (для лучшей работы модуля ХЬее), имеется поле пустых контактов достаточного размера, чтобы на нем можно было установить контактную колодку для подключения ЖК-дисплея.
Все это монтируется в пластиковый (обязательно!) корпус, передняя стенка которого вырезана под дисплей. Работе ХЬее пластиковый корпус не помешает, а вот датчики лучше вынести наружу — даже то небольшое количество тепла, которое выделяют компоненты схемы при работе, исказит значения температуры, а влажность в герметичном корпусе может отличаться от реальной на десятки процентов (не в этом ли причина столь плохой работы серийных изделий?).
Сложнее окажется конструкция варианта с двумя OLED-дисплеями — на стандартных Arduino-платах для них просто не хватит места. Возможный вариант — изготовление кросс-платы, на которую устанавливаются все модули, соединенные дорожками с контактами платы Arduino. Отверстия на кросс-плате делаются так, чтобы штыри Wireless Shield можно было протащить насквозь, пропаять, а затем надеть на них плату Arduino Uno с другой стороны. На рис. 22.7 показано, как выглядит вариант конструктивного исполнения станции с отображением информации на дисплеях.
Рис. 22.7. Готовая метеостанция на стене загородного дома
В выносном датчике устанавливать какие-либо платы расширения не имеет особого смысла. Все компоненты схемы по рис. 22.4 можно установить на печатной макетной плате (подобной показанной на рис. 3.2 слева ), и соединить их монтажными проводами. Конечно, не стоит паять непосредственно выводы платы Arduino Mini — придется приобрести переходные колодки типа PBS.
Трудность состоит в том, что шаг выводов Xbee-модуля — 2 мм, и под него довольно сложно найти готовую плату. Так что придется либо раскладывать и изготавливать ее самостоятельно, либо пожертвовать экземпляром Wireless Shield, вырезав из нее кусок с колодками для подключения Xbee-модуля. На этой плате рядом с колодками имеются соединенные с ними контактные площадки, расположенные с обычным шагом 2,5 мм, куда можно поместить вилку штыревого PLS-разъема, получив таким образом переходную панельку для установки в обычную плату. Все это монтируется в корпус вместе с батарейным отсеком на три элемента типоразмера АА или С. Как и в случае главного модуля станции, плату SHT1x с датчиками лучше вынести за пределы корпуса, защитив ее от внешних воздействий ограждением или кожухом из пластиковой сетки.
Читать дальше
Конец ознакомительного отрывка
Купить книгу