Читаем Изучаем Arduino: инструменты и методы технического волшебства полностью

11.3.2. Пример 1: беспроводное управление цветом окна на компьютере

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

1. Загрузите программу, которая позволяет изменить цвет окна обработки с помощью потенциометра, подключенного к Arduino. Сделайте это до установки переходника ХВее на плату Arduino, чтобы избежать коллизий UART, которые обсуждались ранее в этой главе. Если на переходнике есть перемычка или переключатель для выбора режима подключения/отключения ХВее к UART, то сам переходник при программировании платы Arduino можно не извлекать. Уточните это в документации на ваш переходник ХВее. Код программы, читающий данные потенциометра и передающий их на компьютер, приведен в листинге 11.1.

Листинг 11.1. Программа Arduino для отправки данных на компьютер - pot_to_processing/arduino_read_pot

// Отправка данных потенциометра на компьютер

const int POT=0; // Аналоговый вход для подключения потенциометра

int val;

// Переменная для хранения данных потенциометра

- 238 -

void setup()

{

Serial.begin(9600); // Запуск последовательного порта

}

void loop()

{

val = map(analogRead(POT), 0, 1023, 0, 255); //

//Чтение и масштабирование данных

//Отправка данных

Serial.println(val);

delay(50); // Задержка

}

2. Отключите плату Arduino от компьютера и подсоедините к ней переходник вместе с модулем ХВее. Подключите потенциометр к аналоговому входу 0, как показано на электрической схеме, изображенной на рис. 11.16.

3. Для питания платы Arduino используйте один из методов, описанных в предыдущем разделе. Я выбрал сетевой USB-адаптер питания.

4. Подключите ХВее USB Explorer с другим запрограммированным модулем ХВее к компьютеру с помощью кабеля USB. Если модули настроены правильно, Rx светодиод на переходнике USB ХВее Explorer будет быстро мигать в момент получения данных.

5. Перед использованием приходящих данных в Processing-приложении откройте монитор последовательного порта в Arduino IDE. Выберите последовательный порт, к которому подключен ваш переходник USB ХВее Explorer, и убедитесь, что данные поступают в компьютер (рис. 11.17).

6. После того как вы убедитесь, что данные поступают, закройте монитор последовательного порта и запустите программу на Processing для регулировки цвета окна. Проверьте, что последовательный порт выбран правильно. Текст программы на Processing приведен в листинге 11.2.

Листинг 11.2. Программа на Processlng для чтения последовательных данных и установки цвета экрана - pot_to_processing/processlng_d,splay_color

// Программа на Processing для чтения переменной и изменения цвета экрана

// Подключение и инициализация библиотеки serial

import processing.serial.*;

Serial port;

float brightness = 0; // Переменная для хранения значения потенциометра

void setup()

{

// Размер окна

size(500,500);

port = new Serial(this, "COM3", 9600); // Инициализация

// последовательного порта

- 239 -

port.bufferUntil('\n');// Символ конца строки

}

void draw()

{

background(0,0,brightness);// Перерисовать окно

}

void serialEvent (Serial port)

{

brightness = float(port.readStringUntil('\n')); // Получить переменную

}

Рис. 11.16. Схема соединения платой Arduino с потенциометром и переходником ХВее

- 240 -

Рис. 11.17. Данные, переданные по беспроводному каналу в монитор последовательного порта

При запуске программы она должна работать так же, как это было при подсоединении платы Arduino непосредственно к компьютеру. Теперь вы можете ходить вокруг дома и офиса (если питаете Arduino от батареи) и менять цвет на экране компьютера.

11.3.3. Пример 2: управление RGB-светодиодом

В предыдущем примере мы убедились, что возможна беспроводная передача данных от Arduino к компьютеру. Теперь используем код из главы 6 для управления RGB-светодиодом, чтобы проверить, что можно отправлять данные без проводов от компьютера к плате Arduino. Удостоверившись в успешном обмене данными между компьютером и Arduino по беспроводному соединению, вы сможете создавать множество интересных приложений (некоторые есть на веб-странице для этой главы).

Сначала загрузим программу (листинг 11.3) на плату Arduino. Подобный пример был рассмотрен в главе 6. Принимаем строку значений RGB и устанавливаем цвет RGB-светодиода.

Листинг 11.3. Управление RGB-светодиодом через последовательный порт - processing_control)RGB/list_control

// Отправка многоразрядных значений

// Константы выводов RGB-светодиода

const int RED =11;

const int GREEN =10;

const int BLUE =9;

// Переменные значений выводов RGB

int rval=0;

int gval=0;

int bval=0;

- 241 -

void setup()

{

Serial.begin(9600);// Инициализация последовательного

Перейти на страницу:

Похожие книги