Pull to refresh

Как я разработал устройство, от идеи до производства. Часть 3

Reading time3 min
Views20K


Итак техническая часть проекта MT9000, заключительная. Если вы не читали первую и вторую части, рекомендую ознакомиться. Что же, приступим!

Как мама учит мыть руки перед едой, так и планирование – обязательная стадия разработки любого проекта. Иначе проект может перерасти в процесс, а мне это совершенно не нужно. Без плана и определения методики разработки не делаю ничего!

Для разработки проекта в целом использован старый добрый классический инкрементный подход: тщательное планирование, проектирование, несколько этапов тестирования прототипов, релиз. Нужно заранее спланировать все критические даты и важные точки проекта. Тогда есть шанс сдать проект с минимальной задержкой.

Представить план проекта нам поможет Serena OpenProject.



С разработкой софта дело обстоит немного по-другому. Хотя проект в общем то небольшой, но для разработки софта фактически принимаем во внимание методику ХР, беря от неё лучшее и не вдаваясь в религиозные войны по мелочам типа состава команды и играм в планирование. Выработанный мною для таких случаев подход такой:
— основной скелет программы;
— частые внутренние релизы;
— постоянное тестирование и выявление багов;
— коллективное владение исходным кодом;
— в качестве представителя заказчика выступаю я сам.


Для разработки HW части проекта применялся кросс платформенный пакет Eagle. Урезанной бесплатной версии оказалось достаточно. В перспективе думаю купить все же полную версию, всё-таки ценник на лицензию этого продукта довольно гуманный В Eagle нет продвинутых средств, вроде автоматической трассировки печатных плат, но для проекта данного уровня оно и не нужно.



Для старта написания софта, чтобы не ждать пока будут готовы HW прототипы, было приобретено несколько отладочных наборов Evaluation Board выбранных производителей, общей стоимостью менее тысячи долларов.



В соответствии с основным каскадным планом, в проекте было произведено примерно три итерации исправления печатных плат базового блока и несколько итераций по модификации плат датчиков. Каждый квадратный миллиметр стоит свою копеечку, поэтому стараемся делать всё как можно компактнее.



Как мы помним, проект у нас использует беспроводные технологии. В начале я надеялся, что возможно будет просто написать софт, не вдаваясь в подробности беспроводных коммуникаций. То есть на уровне функционала предоставляемых производителем библиотек. Однако это оказалось глубоким заблуждением. В момент, когда сеть начинает падать, а ты не понимаешь, почему же это происходит, пришло озарение, что без беспроводного сниффера обойтись не получится. Пришлось быстро искать специальные средства для анализа беспроводного трафика.

Есть такой анализатор сетевого трафика, называется он WireShark. Изящным решением стала идея компании Jennic создать программно-аппаратное средство, которое будет эмулировать сетевой трафик, подставляя в него уникальные заголовки для собственной идентификации. Аппаратно беспроводной сниффер был сделан быстро на коленке из одного из первых готовых датчиков будущего проекта.



Подключаем WS сниффер к USB компьютера и заводим трафик от этого беспроводного сниффера на созданный нами дополнительный loopback интерфейс.

Далее просим Wireshark отобразить трафик с этого loopback интерфейса и наслаждаемся картинками что же у нас происходит в эфире.



Естественно Wireshark можно использовать для анализа любого типа трафика.

Не имею возможности подробно остановиться в рассказе про софт, поскольку он есть предмет know-how компании, в которой я работаю, скажу лишь только, что софт это одна из самых важных составляющих проекта. Без участия в проекте хороших программистов ничего бы не получилось. Было написано, протестировано и исправлено тысячи строк кода и потрачено в общей сложности 700 часов упорного труда.

Возвращаясь к вопросу первой части, как и обещал, публикую картинку распределения каналов и взаимовлияния 802.11.b и 802.15.4. Для минимизации влияния на качество связи со стороны WI-FI, пишем софт так, чтобы он выбирал для работы нашей системы 15, 20 или 26 канал канал.



Вот собственно и все, что я хотел бы рассказать о проекте по разработке МТ9000.

В итоге затратив около 8 мес. времени и в общем то небольшие инвестиции, мы создали собственное устройство, использующее современные беспроводные технологии, которое стоит на страже душевного спокойствия человека. Наше устройство полностью готово и стоит на виртуальной полочке виртуального интернет-магазина, а также MT9000 можно купить и на реальных прилавках. Сейчас мы работаем и над другими интересными проектами, а всю нашу продукцию можно найти здесь.
Всем, кто захочет повторить мой опыт, желаю удачи и успехов в труде. Дерзайте!
Tags:
Hubs:
If this publication inspired you and you want to support the author, do not hesitate to click on the button
+44
Comments30

Articles

Information

Website
masterkit.ru
Registered
Founded
Employees
Unknown
Location
Россия