Встраиваемая вычислительная система eBox 2300 SoC
Взаимодействие с внешним оборудованием с помощью USB
Устройства USB обычно нуждаются в драйвере устройства, специфическом для каждого устройства. Для Windows Embedded CE 6.0 драйвер устройства должен быть доступен в версии совместимой с X86 CE 6.0. Это немного ограничивает текущие варианты выбора, так как новая версия CE 6.0 была выпущена только что, но со временем появятся другие варианты. К счастью существуют два устройства USB с проектом общедоступного исходного кода для драйвера устройства CE USB.
Phidgets является семейством цифровых и аналоговых интерфейсов В/В на основе USB и датчиков, созданных для любителей робототехники и электроники. Драйвер с общедоступным исходным кодом доступен для устройств Phidget. Самые распространенные модули Phidget включают устройства для аналогового и цифрового В/В. Датчики и модули предоставляют поддержку для радиоуправляемых (R/C) сервомоторов, датчиков вращения, датчиков движения, датчиков температуры, датчиков влажности, RFID, и GPS. Другие датчики могут взаимодействовать с платами цифрового и аналогового В/В общего назначения. Дополнительную информацию об этом и другим проектам общедоступного исходного кода для CE можно найти по адресу http://msdn2.microsoft.com/en-us/embedded/aa731151.aspx
Другой возможностью является устройство USB, которое работает с помощью драйвера виртуального коммуникационного порта. Несколько устройств, содержащих микросхемы FTDI, действуют таким образом, что имеют одновременно аналоговые и цифровые средства В/В со встроенным программным обеспечением, которое отвечает на команды, посланные на виртуальный коммуникационный порт. Показанный ниже модуль 245PBT включает микроконтроллер USB и микроконтроллер PIC, подключенный к 40-контактному модулю адаптера DIP (www.DLPdesign.com/usb). Он поддерживает цифровой В/В и аналоговые входы. Он может подключаться в стандартную электронную протоплату.
Взаимодействие с Web-камерой USB
Многим встроенным устройствам требуется ввод фотографий или видео камеры. Проект общедоступного исходного кода с драйвером USB для Windows Embedded CE доступен для недорогой Web-камеры Logitech QuickCAM Pro 5000 USB. Драйвер может захватывать фотографии и видео поток с частотой 10 кадров в секунду с разрешение 320x240 пикселей.
Дополнительную информацию об этом и других общественных проектах для Windows Embedded CE, включая модули датчиков Phidget, можно найти по адресу http://msdn2.microsoft.com/en-us/embedded/aa731151.aspx.
Кроме того недавно был опубликован новый драйвер камеры USB CE 6.0 по адресу www.microsoft.com/downloads. Он обеспечивает получение фотографий и видео захвата с камер, которые соответствуют стандарту USB Video Class версии 1.1.
Взаимодействие с внешним оборудованием с помощью последовательного порта
Устройства последовательного доступа имеют небольшое облегчающее использование программное преимущество в том, что не требуются никакие специальные драйверы устройств, так как драйверы для поддержки последовательных устройств включены в ОС. К сожалению полоса пропускания В/В последовательной передачи по сравнению с USB будет меньше. Платы последовательного доступа будут также требовать свой собственный источник питания, в отличие от небольших дешевых плат USB, которые могут использовать питание 5V DC 500MA из кабеля USB.
Платы Cypress Programmable System on a Chip (PSoC) являются одним из наиболее интересных и легко используемых дешевых вариантов. Однокристальное устройство PsoC содержит микроконтроллер, A/D, D/A, программируемые блоки усиления, цифровой В/В, и последовательный В/В. Сначала с помощью графического программного инструмента выбирают необходимые аналоговые и цифровые блоки, размещают и соединяют в кристалле для обеспечения широкого набора средств В/В. Затем встроенное программное обеспечение микроконтроллера программируется на языке ассемблера или на С. Используя настольный ПК с кабелем USB специальный адаптер программирует встроенную программу во флэш-памяти внутри устройства. Инструменты разработки и небольшой дешевый PCB с микросхемой, LCD-дисплеем, разъемами В/В, и небольшой областью протоплаты доступны для учебных заведений с академической скидкой (www.cypress.com/CUAP ). Версия USB платы также доступна, но Cypress не предоставила для нее в настоящее время ни одного драйвера устройств USB для CE.
Рис. 5.9. Оценочный комплект Cypress PSoC CY3210 имеет LCD, последовательный интерфейс, и небольшую область протоплаты
Дешевые датчики для проектов встроенных систем
Широкое множество дешевых датчиков доступно для проектов создания встроенных систем. Некоторые из наиболее популярных датчиков для небольших роботов и любительских проектов показаны на рисунке 5.6. Модуль отслеживания линии обнаруживает темную линию на полу и может использоваться для отслеживающего линию робота. ИК датчики близости можно использовать для обнаружения присутствия препятствий в пределах полуметра. Дешевые преобразователи угол-код можно использовать для получения информации о скорости и положении сервомеханизмов и моторов DC. Спутниковые приемники GPS могут определять положение наружного устройства с точностью нескольких метров. Дешевые модули ультразвуковых локаторов посылают ультразвуковой сигнал для измерения расстояния до ближайшего объекта. Интервал действия обычно от нескольких сантиметров до примерно 10 метров. Они измеряют время возвращения сигнала и, используя скорость звука в воздухе, вычисляют расстояние. ИР датчики расстояния возвращают расстояние до ближайшего объекта, определяя угол отражения инфракрасного (ИК) луча от поверхности объектов, и обычно работают в интервале расстояний от нескольких сантиметров до полуметра. Модули электронного компаса могут определять ориентацию устройства, используя магнитное поле Земли. Модули камер на твердотельных CMOS можно использовать для захвата изображений и видео. Показанный модуль камеры Omnivision использует интерфейс I2C для управления, а данные изображения передаются на 8-битный параллельный порт.
Дешевые гироскопы и акселерометры можно использовать для создания чувства баланса, измеряя ускорение силы тяжести (т.е., вертикальную 1G и горизонтальную 0G). К сожалению уровни шума на этих дешевых датчиках движения все еще слишком высоки, чтобы выполнять интеграцию по времени для определения точного положения устройства во время его перемещения.
Доступны также многочисленные другие твердотельные датчики, которые измеряют температуру, влажность, PH, и уровни имеющихся в воздухе выбранных химических газов.
Датчики поставляются с аналоговым и/или цифровым выводами. Цифровые датчики могут соединяться с портом GPIO. Для взаимодействия с датчиками с аналоговым выходом, требуется микросхема A/D преобразования в цифровые сигналы, или можно использовать одну из описанных ранее плат USB или последовательного В/В с аналоговым входом. Платы USB и последовательного В/В с аналоговым входом имеют свой внутренний конвертор A/D, а некоторые имеют даже конвертор D/A для аналогового выхода. Небольшие дешевые 8-16 битные микросхемы A/D доступны также с интерфейсами SPI или I2C. Часто требуются дополнительные схемы преобразования сигналов для аналоговых сигналов для масштабирования уровня напряжения сигналов и управления (согласования импеданса) аналоговых входов и выходов.
Рис. 5.10. Дешевые датчики слева направо: Отслеживания линии, ИК датчик близости, углового положения, GPS, ультразвуковой локатор, ИК датчик расстояния, электронный компас, камера CMOS
Компания Analog Devices (www.analog.com) делает разнообразные ИС конверторов A/D и D/A с параллельным и SPI интерфейсами. Она также выпускает гироскопы MEM, акселерометры, и другие датчики. Образцы устройств можно запросить на их Web-сайте.
Многие новые устройства и датчики доступны только в корпусах для монтажа на поверхности. Для проектов, использующих устройства с поверхностным монтажем с интерфейсом LPC доступны небольшие дешевые платы адаптеров с контактами, которые вставляются в стандартную .1-дюймовую протоплату. Адаптеры доступны для многих из наиболее распространенных стилей корпусов поверхностного монтажа по адресу www.winslowadaptics.com и www.beldynsys.com. Устройство поверхностного монтажа должно быть тщательно припаяно ко многим платам адаптеров.
Рис. 5.11. Специальные платы адаптеров облегчают прототипирование с помощью компонентов с поверхностным монтажем. Показан небольшая 10-контактная микросхема 16-битного SPI A/D поверхностного монтажа, смонтированная на специальной поверхности присоединенной к плате адаптера DIP, которая позволяет ей подключаться прямо в 1-дюймовую студенческую протоплату
Если требуется плата с печатным монтажем (PCB) для специальной конструкции оборудования с датчиками или другими простыми устройствами, существует ряд дешевых служб на основе Web изготовления PCB. Для проектирования PCB предоставляются средства CAD, а файлы конструкции посылаются через Web изготовителю PCB. Изготовитель предоставляет затем бесплатную оценку стоимости, изготавливает платы, и экспресс-почтой пересылает их заказчику за пару дней. Двумя такими службами изготовления PCB на основе Web являются www.expressPCB.com и www.4PCB.com.
Новичок в проектировании PCB должен начинать с проектирования только простых двухсторонних PCB, пока не станет лучше понимать весь процесс и используемые инструменты. Сложные платы с процессорами, памятью, и другими устройствами с большим количеством выводов будут требовать многослойных PCB, и они имеют очень высокие начальные расходы по производству при небольших партиях. Потребуется также дорогое оборудование для пайки или внешний подрядчик для пайки устройств поверхностного монтажа с большим количеством контактов для PCB новой конструкции.