Быстрая разработка на основе Netduino
Недавно получил небольшой кусочек аппаратного удовольствия. Есть что-то при написании кода, взаимодействующего с «реальным миром», что кажется слишком крутым. Тогда, конечно, сложно сбиться с пути, указываемому игрой Fallout (радиоактивные осадки)…
Сегодняшнее сообщение пришло от Фабьена Ройера (Fabien Royer) и называется «Создание счетчика Гейгера с выходом в Твиттер на основе Netduino+». Именно, чирикающий счетчик Гейгера…
ОбъединениесчетчикаГейгерасNetduino
В конце концов, я обнаружил, что магазин Electronic Goldmine продает скелетный набор для макетирования детектора радиации по вполне пристойной цене. Сразу, в то время как в интернете множество предложений только по счетчикам Гейгера, и это замечательно!
Мне только оставалось придумать способ подсчета импульсов от датчика. Решение, к которому я пришел, было простым: в набор входит светодиод, который вспыхивает, когда счетчиком Гейгера-Мюллера регистрируется импульс. Если бы я смог снять каждый импульс и сгенерировать прерывание, то было бы легко их подсчитать.
...
Элемент Твиттера…
Соединение с Твиттером
Время от времени, приложение передает данные в Твиттер:
Чтобы добиться этого я использовал библиотеку MicroTweet Мэтта Айзехауэра (Matt Isenhower)…
Складываем все в коробку...
Корпус
Выбранный мною корпус для этого проекта сделан из тонкого светлого дерева, прекрасно подходящего для покраски и украшения. Дно ящика настолько тонкое, что мешает использованию стоек и винтов для безопасности электроники. Я использовал полоски-липучки, которые прекрасно подошли: все части были плотно зафиксированы на своих местах, и в то же время, их можно было легко удалить при необходимости:
Последним штрихом для корпуса стало использование темы игры Fallout 3, любезно предоставленной Bethesda for Fallout New Vegas. Если вы геймер, то, возможно, знакомы со вселенной Fallout, где выживание персонажей зависит от носимых компьютеров, PIP Boy 3000, которые отличает наличие счетчиков Гейгера. Будучи большим энтузиастом Fallout, я отдаю дань игре посредством этого проекта…
Давайте взглянем на код PIP Boy 3000, который размещен как образец на сайте проекта netduino Helpers.
public static void Main() {
//Debug.EnableGCMessages(true);
InitializeLCDScreen();
InitializeResources();
HelloWasteland();
var geigerCounter = new GeigerCounter(Pins.GPIO_PIN_D7, Stats);
geigerCounter.Start();
while (true) {
Thread.Sleep(1000);
Trace.Print("Rnd=" + geigerCounter.GetRandomNumber().ToString());
if(_updateLCD){
_updateLCD = false;
WriteLCD(LcdCommandClearScreen + _cpm10Seconds);
}
if(_updateTwitter) {
_updateTwitter = false;
if (_cpmPreviousAverage != _cpmAverage) {
_cpmPreviousAverage = _cpmAverage;
Text.Clear();
Text.Add(GetUtcTimestamp());
Text.Add(",Lat=" + _latitude);
Text.Add(",Long=" + _longitude);
Text.Add(",Rnd=" + geigerCounter.GetRandomNumber());
Text.Add(",AverageCPM(Hour)=" + _cpmAverage);
TwitterStatusUpdate(Text);
}
}
}
}
Вам понравится название метода HelloWasteLand (Здравствуй, пустошь)
Кстати, если я не говорил о проекте netduino Helpers, то должен это сделать. Этот проект, возможно, заслуживает отдельного сообщения, но в свое время. Если вы разрабатываете на базе Netduino, то должны познакомиться с ним.
Вот сам Helper;
И снимок включенных примеров;
И наконец, это еще один замечательный пример объединения реального и виртуального миров с помощью Net и Netduino...
Несколько ссылок, которые могут быть интересны:
- Журнал MAKE: Как сделать: Гейгеровски счетчик с выходом в твиттер
- Netduino
- Шесть мест, где можно купить Netduino и другие электронные компоненты
- netduino Helpers
- Новое в магазине Maker Shed: Netduino, электронная платформа с открытым кодом, управляемая .NET
- Видео TWC9: Netduino, Twitter oAuth in Windows Phone, App skinning, and universal physics
- Netduino – .NET Micro Framework, открытый исходный код, электронная платформа, свободное ПО, прогулки по коду, здорово…