Изучаем Arduino: инструметы и методы технического волшебства - [60]

Шрифт
Интервал

. С этих входов напряжение поступает на встроенный стабилизатор, который выдает напряжение 5 В для питания микропроцессора и других компонентов. На рис. 11.14 показана 9-вольтовая батарея со встроенным выключателем и разъемом питания.

Вместо 9-вольтовой батареи можно использовать несколько батареек АА с напряжением 1,5 В. Если соединить последовательно четыре таких батарейки, получится напряжение около 6 В. Минимальное падение напряжения на встроенном в Arduino стабилизаторе равно 1 В. При входном напряжении 5,5 В на шине питания будет

рис. 11.14. Батарея 9 В

- 237 -

4,5 В. Можно рассчитывать, что плата будет работать и при напряжении 4,5 В, что приемлемо для платы на базе ATMega, хотя и ниже напряжения при питании от USB.

Сетевые источники питания

Еще один вариант питания для удаленной платы Arduino - стандартный сетевой адаптер. Он подключается к обычной розетке и имеет на другом конце разъем для соединения с Arduino. При выборе подобного сетевого блока питания необходимо обратить внимание на три важных характеристики:

• размеры разъема (диаметр 2,1 мм с плюсовым центральным контактом (рис. 11.15) );

• напряжение питания (желательно 7-12 В);

• максимальный ток (чем выше ток, тем больше устройств можно подключить к плате Arduino ). Блок с током 1 А довольно распространен и обеспечивает более чем достаточную мощность для платы Arduino и некоторых дополнительных компонентов.

Рис. 11.15. Разъем сетевого адаптера с плюсовым центральным контактом

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 от батареи) и менять цвет на экране компьютера.