Использование Платы Intel Edison Для Изменения Цвета Orbotix Sphero При Появлении Новых Твитов

В этой статье описывается, как создать устройство на базе Intel Edison, которое проверяет Twitter и меняет цвет Orbotix Sphero при появлении нового твита с хэштегом.

#intelmaker .

Дополнительно будет рассмотрен небольшой пример, использующий встроенный светодиод на плате при отсутствии Сферошара.



Использование платы Intel Edison для изменения цвета Orbotix Sphero при появлении новых твитов

Несколько слов об Орботикс Сферо.

Это роботизированный шар, внутри которого есть мотор и свет. Им можно управлять через Bluetooth. Существуют различные приложения и игры для телефонов, которые с ним работают. В этой статье будет использована способность мяча менять цвет. Итак, нам нужно:

Создание приложения Эта часть содержит инструкции по созданию нового проекта в Intel XDK IoT Edition с кодом для обновления состояния шара Sphero. 1. В приложении Intel XDK IoT Edition выберите вкладку «Проекты».

Нажмите «Начать новый проект».



Использование платы Intel Edison для изменения цвета Orbotix Sphero при появлении новых твитов

2. В разделе «Встроенное приложение Интернета вещей» нажмите «Шаблоны»:

Использование платы Intel Edison для изменения цвета Orbotix Sphero при появлении новых твитов

3. Выберите любое приложение и нажмите «Продолжить».



Использование платы Intel Edison для изменения цвета Orbotix Sphero при появлении новых твитов

4. В поле «Назовите свой проект» введите название вашего проекта и нажмите «Создать».



Использование платы Intel Edison для изменения цвета Orbotix Sphero при появлении новых твитов

5. Откроется ваш новый проект. Будет показан файл main.js. Удалите все его содержимое и замените следующим кодом: main.js

  
  
  
  
  
  
  
   

var twitter = require('mtwitter'); var colors = require('colors'); var moment = require('moment'); var spheron = require('spheron'); var sphero = spheron.sphero(); var spheroPort = '/dev/rfcomm0'; var COLORS = spheron.toolbelt.COLORS; var newMessage = false; var lastTweet = '21:35:5'; var twit = new twitter({ consumer_key : 'xxxxxxxxxxxxxxxxxxxxx', consumer_secret : 'xxxxxxxxxxxxxxxxxxxxx', access_token_key : 'xxxxxxxxxxxxxxxxxxxxx', access_token_secret : 'xxxxxxxxxxxxxxxxxxxxx' }); console.log('Starting'.

cyan); setInterval(function() { twit.get('search/tweets', {q: '#intelmaker'}, function(err, item) { console.log(item.statuses[0].

created_at.substring(11, 18).

cyan) console.log(lastTweet); console.log("From isNew(): ", newMessage); if(item.statuses[0].

created_at.substring(11, 18) === lastTweet) { console.log("we here"); newMessage = false; } else{ newMessage = true updateSphero(true); lastTweet = item.statuses[0].

created_at.substring(11, 18); } }); }, 1000); function updateSphero(flag) { console.log('updating sphero'); sphero.on('open', function() { sphero.setRGB(COLORS.RED, false); setTimeout(function(){sphero.setRGB(COLORS.BLUE, false);}, 2000); }); sphero.open(spheroPort); }

6. На левой панели выберите файл package.json. В разделе «зависимости» добавьте все модули, которые потребуются программе:

"dependencies": { "mtwitter":"latest", "colors":"latest", "moment":"latest", "spheron":"latest" }



Использование платы Intel Edison для изменения цвета Orbotix Sphero при появлении новых твитов

Приложение Твиттера В этой части описаны шаги по созданию нового приложения Twitter и получению ключей, которые позволят вашему приложению взаимодействовать с Twitter. 1. Перейдите на страницу приложений Twitter. «Твиттер-приложения» используя свою учетную запись Twitter. 2. Нажмите «Создать новое приложение».

Откроется страница настройки параметров нового приложения.



Использование платы Intel Edison для изменения цвета Orbotix Sphero при появлении новых твитов

3. На этой странице выполните следующие действия: а.

В поле «Имя» введите название вашего приложения.

б.

В поле Описание введите описание.

в.

Введите URL вашего сайта в поле «Веб-сайт».



Использование платы Intel Edison для изменения цвета Orbotix Sphero при появлении новых твитов

4. Прочтите условия использования и, если согласны, отметьте «Да, я согласен».

Нажмите «Создать приложение Twitter».



Использование платы Intel Edison для изменения цвета Orbotix Sphero при появлении новых твитов

5. Нажмите на вкладку «Ключи и токены доступа».



Использование платы Intel Edison для изменения цвета Orbotix Sphero при появлении новых твитов

6. В разделе «Настройки приложения» скопируйте пользовательский ключ из поля «Ключ потребителя (Ключ API)» и секретный ключ из поля «Секрет потребителя (Секрет API)» и вставьте их в программу редактирования текста, например, «Блокнот».



Использование платы Intel Edison для изменения цвета Orbotix Sphero при появлении новых твитов

7. В разделе «Ваш токен доступа» нажмите «Создать мой токен доступа».



Использование платы Intel Edison для изменения цвета Orbotix Sphero при появлении новых твитов

8. Скопируйте токен из поля «Токен доступа» и секретный токен из поля «Секрет токена доступа» и вставьте в программу редактирования текста.



Использование платы Intel Edison для изменения цвета Orbotix Sphero при появлении новых твитов

9. В приложении Intel XDK IoT Edition в файле main.js перейдите к строке, которая начинается с Consumer_key. Вставьте фактические ключи, которые вы ранее скопировали, в значение переменных Consumer_key, Consumer_secret, access_token_key и access_token_secret.

Использование платы Intel Edison для изменения цвета Orbotix Sphero при появлении новых твитов

Сложный Подключите плату Edison к Sphero с помощью Bluetooth: 1. Подключитесь к плате через окно терминала.

2. Чтобы активировать Bluetooth и выполнить поиск доступных устройств, введите следующие команды:

rfkill unblock bluetooth bluetoothctl

3. MAC-адрес вашего Sphero должен быть указан внизу коробки в формате XX-XX-XX-XX-XX-XX. Если вы не можете найти MAC-адрес, сделайте следующее: а.

Введите команду:

scan on

б.

Найдите свой Sphero в списке и скопируйте MAC-адрес.

в.

Введите команду:

scan off

4. Подключите плату и Sphero, введя следующие команды:

pair SpheroMacAddress exit rfcomm bind 0 SpheroMacAddress 1

MAC-адрес должен иметь формат XX:XX:XX:XX:XX:XX. Это создаст соединение со Sphero. Загрузка кода на плату Теперь мы можем создать наше приложение и загрузить его на доску.

После выполнения следующих шагов цвет вашего сферо-шара изменится при появлении нового твита.

В приложении Intel XDK IoT Edition щелкните значок «Установить/создать».



Использование платы Intel Edison для изменения цвета Orbotix Sphero при появлении новых твитов

.

Если вас попросят загрузить или собрать проект, выберите «Создать».

Когда проект будет построен, появится сообщение об этом.

Нажмите значок «Загрузить»

Использование платы Intel Edison для изменения цвета Orbotix Sphero при появлении новых твитов

загрузить проект на доску.

Нажмите значок «Выполнить».



Использование платы Intel Edison для изменения цвета Orbotix Sphero при появлении новых твитов

чтобы начать свой проект. Ваш Sphero теперь будет проверять Твиттер раз в секунду и на секунду загораться синим, если кто-то пишет в Твиттере с хэштегом.

#intelmaker .

Если нет сферо-шара Дополнение от переводчика: если нет Сферошара, можно заставить мигать встроенный светодиод на плате, который подключен к 13-му цифровому выводу.

А чтобы чаще наблюдать за этим событием, можно поискать какой-нибудь общий хэштег из Топа, например #gameinsight .

main.js

var twitter = require('mtwitter'); var mraa = require('mraa'); var lastTweet = 'XX:XX:XX'; var myOnboardLed = new mraa.Gpio(13); myOnboardLed.dir(mraa.DIR_OUT); var twit = new twitter({ consumer_key : 'XXXXXXXXXXXXXXXXXXXXXXXXX', consumer_secret : 'XXXXXXXXXXXXXXXXXXXXXXXXX', access_token_key : 'XXXXXXXXXXXXXXXXXXXXXXXXX', access_token_secret : 'XXXXXXXXXXXXXXXXXXXXXXXXX' }); console.log('Starting'); setInterval(function() { console.log('--------------'); twit.get('search/tweets', {q: '#gameinsight'}, function(err, item) { if( item !== null ) { currTweetTime = item.statuses[0].

created_at.substring(11, 18); if( currTweetTime !== lastTweet) { console.log( 'Have new message: ' + item.statuses[0].

text); lastTweet = currTweetTime; updateLed(); } } }); }, 1000); function updateLed() { myOnboardLed.write(1); setTimeout(function(){myOnboardLed.write(0);}, 500); }

В файл package.json просто добавьте следующие зависимости:

"dependencies": { "mtwitter":"latest" }

Дополнительные ресурсы:

Теги: #intel edison #Bluetooth #iot #интернет вещей #edison #galileo #Twitter #Twitter API #orbotix sphero #Sphero #sphero #Twitter API
Вместе с данным постом часто просматривают:

Автор Статьи


Зарегистрирован: 2019-12-10 15:07:06
Баллов опыта: 0
Всего постов на сайте: 0
Всего комментарий на сайте: 0
Dima Manisha

Dima Manisha

Эксперт Wmlog. Профессиональный веб-мастер, SEO-специалист, дизайнер, маркетолог и интернет-предприниматель.