DroidScript
DroidScript
учимся и разрабатываем

Интерфейс для работы с NXT-устройствами

09.05.2017

Объект для управления Lego Mindstorms NXT платформы создаётся с использованием конструктора CreateNxtRemote:

myObject.CreateNxtRemote()

Методы:

  • Beep( int freq, float dur ) - посылает устройству команду воспроизвести звук заданной частоты и длительности

  • Brake( str motors ) - посылает устройству команду торможения указанных моторов

  • CheckConnection() - проверяет связь с устройством

  • Connect( name ) - устанавливает связь с устройством

  • Disconnect() - разъединяет связь с устройством

  • Drive( str motors, int power, int rotations, options ) - запускает двигатель устройства

  • FileFindFirst( str pattern ):{} - возвращает объект nxtinfo c информацией о первом найденном файле в устройстве по заданному шаблону:

    obj.FileFindFirst( '*.*' );

  • FileFindNext( int handle ):{} - находит следующий файл в устройстве по заданному дескриптору

    obj.FileFindNext( my_nxtinfo.GetHandle() );

  • GetBtAddress():str - возвращает адрес Bluetooth-устройства

  • GetBtName():str - возвращает имя Bluetooth-устройства

  • GetCurrentProgram() - возвращает информацию о выполняющейся в текущий момент времени программе NXT-G

  • GetRotationCount( str motor ):float - возвращает количество оборотов мотора

  • GetType() - возвращает тип объекта:

    myObject.GetType(); // возвращает "NxtRemote"

  • IsBluetoothEnabled():bool - проверяет, доступен ли Bluetooth на телефоне/планшете

  • IsConnected():bool - проверяет, установлена ли связь с устройством (без отображения всплывающего сообщения)

  • IsEnabled():bool - проверяет, доступно ли устройство

  • IsMotorIdle( (str) motor ):bool - проверяет, работают ли указанные моторы в настоящее время

  • IsPaired( str name ):bool - проверяет, спарено устройство или нет

  • PlaySoundFile( str file, int repeat ) - посылакт устройству команду воспроизвести доступный на устройстве звуковой файл ( .rso). В параметре repeat задаётся количество повторов воспроизведения

    myObject.PlaySoundFile( 'myFile.rso' ,2 );

  • ReadColorSensor( int input, (str) mode ) - принимает данные с датчика цвета:
    • input - номер порта от 1 до 4
    • mode - одно из значений "ColorDetect", "LightSense", "RedSense", "GreenSense", "BlueSense"

    При выборе режима "ColorDetect" метод возвращает число от 1 до 6, соответствующий цветам: black, blue, green, yellow, red, white. Для преобразования числа в название цвета служит метод ToColorName. В остальных режимах возвращается интенсивность света или цветовой составляющей в диапазоне от 0 до 1023.

    myObject.ReadColorSensor( 1 , "LightSense" );

  • ReadDistanceSensor( int input ):float - принимает данные от датчика расстояния на заданном порту (от 1 до 4). Возвращает значение в см.

  • ReadLightSensor( int input, bool active ):int - принимает данные датчика освещения от 0 до 100. Задайте true параметру Active, если при считывании необходимо, чтобы белый цвет был включён.

  • ReadMail( int mailbox,('Text','Number','Logic') type, bool remove ) - читает отправленное устройством сообщение. В параметре mailbox задаётся номер почтового ящика от 1 до 10. В параметре type указывается тип отправляемого значения. В параметре remove задаётся true, еслинужно удалить сообщение после его чтения, или false, если сообщение нужно оставить

  • ReadSoundSensor( int input, ('DB', 'DbA') mode ) - принимает данные от датчика звука на указанном порту в децибелах или взвешенных децибелах

  • ReadTouchSensor( int input ):bool - принимает данные от датчика касания на заданном порту (от 1 до 4). Возвращает true при касании.

  • RequestEnable() - вызывает системный диалог, который может включить Bluetooth, если он был выключен на телефоне/планшете. Если Bluetooth включен, то вызова диалога не производится. Будьте осторожны при немедленном вызове методов IsEnabled или IsBluetoothEnabled для проверки состояния Bluetooth сразу после вызова RequestEnable. RequestEnable не останавливает выполнение программы и не существует метода, определяющего момента завершения её работы

  • Reset( str motors ) - освобождает мотор

  • SendMail( int mailbox, ('Text','Number','Logic') type, str msg ) - отправляет сообщение устройству, которое может быть прочитано нормальной NXT-G программой, запущенной на устройстве. В параметре mailbox задаётся номер почтового ящика от 1 до 10. В параметре type указывается тип отправляемого значения

  • SetInvert( bool invert ) - посылает устройству команду инвертировать направление команд для моторов, при указании true в параметре

  • SetLampColor( int input, (str) clr ) - посылает устройству команду включить световому модулю заданный цвет:
    • input - номер порта от 1 до 4
    • clr - название цвета 'White', 'Red', 'Green', 'Blue', 'Off'

  • SetOnConnect( callback ) - задаёт ФОВ, вызываемую при попытке соединения с устройством

  • SetOnConnectEx( callback ) - не документировано

  • SetOnConnected( callback ) - задаёт функцию для выполнения действия после успешного установления связи с устройством

  • ShowDevices() - показывает диалог со списком спаренных NXT-устройств для выбора того, с которым нужно установить связь.

  • StartProgram( str name ) - запускает на выполнение программу NXT-G (.rxe)

  • Stop( str motors ) - посылает устройству команду отключить подачу энергии заданным моторам и остановить их.

  • StopProgram() - останавливает выполнение NXT-G программы, которая выполняется в текущий момент времени

  • ToColorName( int val ):(black, blue, green, yellow, red, white) - возвращает название цвета по заданному номеру. Используется для расшифровки данных, поступающих от датчика цвета
© 2016-2024 
actech