[TOC]
- Открыть скетч changeBtName.
- В самом начале будут строки
static const char* name = "CAM-016"; // Max 20 characters!
static const char* pin = "1234"; // Strict 4 digits!
- В первой строке вместо
CAM-016
ввести нужное имя латиницей, не больше 20 символов. - При необходимости, во второй строке вместо
1234
ввести нужный пинкод, ровно 4 символа. - Подключить Arduino-Nano с отключенный Bluetooth-модулем к компьютеру.
- Прошить её этим скетчем.
- Отключить от компьютера и подключить Bluetooth-модуль.
- Перезагрузить Arduino-Nano.
- Светодиод должен загореться на несколько секунд, после чего мигнуть и потухнуть. После этого название и пин Bluetooth-модуля будут изменены.
- Открыть скетч gservo.
- В начале будут строки со значениями по умолчанию
Set defSettings()
{
return {
0.0f, // homing pull off, deg
FVec{15000.0f, 15000.0f}, // speed, {x,y}, deg/min
FVec{2000.0f, 2000.0f}, // acceleration, {x,y}, deg/sec^2
FVec{0.0f, 0.0f}, // zero position, {x,y}, deg
FVec::ofConst(0.05f), // proportional gain
FVec::ofConst(0.0f), // integral gain
FVec::ofConst(0.01f), // derivative gain
FVec::ofConst(0.0f), // punch
FVec::ofConst(1.0f), // torque
};
}
Они соответствуют тому, что можно установить через $$
. Их можно менять, чтобы не конфигурировать новые устройства вручную.
- Прошить её этим скетчем.
- Отключить от компьютера и подключить Bluetooth-модуль и сервоприводы.
- Перезагрузить Arduino-Nano.
- Светодиоды на обоих сервоприводах должны мигнуть один раз.
- Подключить только серву для x координаты.
- Ввести
%0 254 1
- Подключить только серву для y координаты.
- Ввести
%0 254 2
- Подключить обе сервы.
- Проверить, введя
%1 1 1
,%1 1 0
,%1 2 1
,%1 2 0
. Это должно включить и выключить светодиод в начале на x серве, потом на y серве.
Команда | Назначение |
---|---|
Движение. Синтакс близок к g-кодам. | |
$H |
Передвинуться в нулевое положение. |
g0 x1.2 y3.45 |
Быстрое движение в заданную позицию. Позиция задаётся в градусах. Используется скорость из настроек. |
g1 x10 y20.3 f1000.0 |
Движение с заданной скоростью. Скрость задаётся через f . в гдадусах в минуту. |
g0 x10 m2 |
Если в конце присутствует m2 , то после окончания движение будет выведена текущая позиция. |
x100 |
Передвинуть только ось x. |
? |
Вывести текущее положение. Можно вызывать во время движения. |
Работа напрямую с сервами. id является идентификатором сервы, которой будет подана команда. Если использовать id=254 , то команда будет подана всем сервам. |
|
%0 id newId |
Установить id сервы в новое значение newId . |
%1 id val |
Переключить светодиод, где val принимает значения 0 или 1 . |
%2 id val |
Прочитать значение в регистре val . |
%% |
Вывести справку. |
Настройки, сохраняющиеся после отключения питания. | |
$$ |
Показать все настройки и их значения. |
$1=255 |
Включить удержание обоих осей, если подано 255 , отключить при любом другом значение. Не сохраняется при отключении. |
$27=0 |
Сдвиг после хоуминга, градусы. |
$110=15000.0 |
Скорость по x, градус в минуту. Установить в 0 для отключения ограничения по скорости. |
$111=15000.0 |
Скорость по y, градус в минуту. Установить в 0 для отключения ограничения по скорости. |
$120=2000.0 |
Ускорение по x, градус в секунду за секунду. Установить в 0 для отключения ограничения по ускорению. |
$121=2000.0 |
Ускорение по y, градус в секунду за секунду. Установить в 0 для отключения ограничения по ускорению. |
$140=0 |
Нулевое положение по x, градусы. |
$141=0 |
Нулевое положение по y, градусы. |
$200=0.05 |
Установить proportional gain для оси x, значение от 0 до 1 . |
$201=00.05 |
Установить proportional gain для оси y, значение от 0 до 1 . |
$210=0 |
Установить integral gain для оси x, значение от 0 до 1 . |
$211=0 |
Установить integral gain для оси y, значение от 0 до 1 . |
$220=0.01 |
Установить derivative gain для оси x, значение от 0 до 1 . |
$221=0.01 |
Установить derivative gain для оси y, значение от 0 до 1 . |
$230=0 |
Установить punch для оси x, значение от 0 до 1 . |
$231=0 |
Установить punch для оси y, значение от 0 до 1 . |
$240=1 |
Установить torque для оси x, значение от 0 до 1 . |
$241=1 |
Установить torque для оси y, значение от 0 до 1 . |
$250=1 |
Включить удержание для оси x, 0 или 1 . |
$251=1 |
Включить удержание для оси y, 0 или 1 . |