本手册的函数及参数说明以C# 驱动库为例进行说明,关于C# 语言的编程说明请参考相关书籍。

参数类型说明

int:整形参数,如:100,0,-20

string:字符串参数,如:”开”,”关”

string args:字符串形式逗号分隔的参数,如:”1, 10, 2,-10”

直流电机

直流电机
函数/作用 参数/返回值/说明
SetMotor(int port, int speed)
设置指定端口的直流电机的速度
直流电机的端口有效范围为1~30。
速度有效范围如下:
普通直流电机-100 ~ 0 ~+100,
10倍精度直流电机 -1000 ~ 0 ~ +1000
速度值为正时正转,为负时反转。直流电机的正反转还与直流电机是否设置为“反转电机”有关。
参数
int port:直流电机端口
int speed:直流电机速度
返回值

示例
SetMotor(1, 10)
设置端口1的直流电机的速度为10,正转
SetMotor(2, -10)
设置端口2的直流电机的速度为-10,反转
SetMotors(int port1, int speed1, int port2, int speed 2, …, int portN, int speedN)
设置多个直流电机的速度
参数
int port1, int speed1:第1组直流电机端口及速度
int port2, int speed2:第2组直流电机端口及速度
int portN, int speedN:第N组直流电机端口及速度
参数中的port 与speed必须成对出现
返回值

示例
SetMotors(1, 10, 2, -10)
设置端口1、2的直流电机的速度分别为10、-10
StopMotors(int port1, int port2, …, int portN)
停止指定端口的一个或多个直流电机
参数
int port1:第1个直流电机端口
int port2:第2个直流电机端口
int portN:第N个直流电机端口
返回值

示例
StopMotors(1,2)
停止端口1、2的直流电机
StopAllMotor()
停止所有直流电机
参数

返回值

示例
StopAllMotor()
停止所有直流电机

伺服电机

伺服电机
函数/作用 参数/返回值/说明
SetJoint(int port, int deg)
设置指定端口的伺服电机的角度
端口有效范围为91~120
角度的有效范围为-180 ~ 0 ~ +179,设置的角度值小于-180时,自动调整为-180,
设置的角度值大小179时,自动调整为179。
参数
int port:伺服电机端口
int deg:伺服电机角度
返回值

示例
SetJoint(91, 45)
设置端口91的伺服电机驱动到45度
SetJoints(int port1, int deg1, int port2, int deg2, …, int portN, int degN)
设置多个伺服电机的角度
参数
int port1, int deg1:第1组伺服电机的端口与角度
int port2, int deg2:第2组伺服电机的端口与角度
int portN, int degN:第N组伺服电机的端口与角度
参数中的port 与deg必须成对出现
返回值

示例
SetJoints(91, 45, 92, -90)
设置端口91、92的伺服电机的角度分别为45、-90度
SetJointsSimStep(int stepDeg, int time, int port1, int deg1, int port2, int deg2, …, int portN, int degN)
设置多个伺服电机以指定的步进量、指定的间隔时间,驱动到目标角度
此函数自动将一个或多个伺服电机以相同的步进,相同的步进间隔时间同时驱动
同时驱动多个伺服电机时,目标角度与当前角度的角度差小的伺服电机先到达目标角度,角度差的伺服电机后到达目标角度。
参数
int stepDeg:每次驱动的步进角度
int time:每两次步进之间的间隔时间,单位毫秒,有效的时间为>10ms
int port1, int deg1:第1组伺服电机的端口及目标角度
int port2,int deg2:第2组伺服电机的端口及目标角度
int portN,int degN:第N组伺服电机的端口及目标角度
参数中的port与deg必须成对出现
返回值

示例
SetJointsSimStep(10, 100, 91, 45, 92, -90)
以每次10度的步进量,每次间隔100ms,将端口91、92的伺服电机的角度分别驱动到45、-90度
SetJointsSimTime(int time, int port1, int deg1, int port2, int deg2, …, int portN, int degN)
设置多个伺服电机在指定的总时间内驱动到目标角度
此函数自动将一个或多个伺服电机在指定的总时间内平滑地、基本同时驱动到目标角度
同时驱动多个伺服电机时,目标角度与当前角度的角度差小的伺服电机转动速度较慢,角度差大的伺服电机转动速度较快,最终同时到达各自的目标角度
参数
int time:驱动到目标角度的总时间,单位毫秒
int port1, int deg1:第1组伺服电机的端口及目标角度
int port2, int deg2:第2组伺服电机的端口及目标角度
int portN, int degN:第N组伺服电机的端口及目标角度
参数中的port与deg必须成对出现
返回值

示例
SetJointsSimTime(1000, 91, 45, 92, -90)
在1秒钟的总时间内,将91、92端口的伺服分别驱动到45、-90度

屏幕输出

屏幕输出
函数/作用 参数/返回值/说明
Print(string value)
将参数的值、内容以字符串形式输出到程序运行窗口
参数
string value:任何可用于显示的字符串、变量名、具有返回的函数等
返回值

示例
Print(“Hell World!”)
在屏幕上显示”Hello World!”
Print(GetDist(31))
在屏幕上显示31端口的距离传感器的返回值

延时与时间

延时与时间
函数/作用 参数/返回值/说明
Sleep(int time)
使程序在此处等待指定的时间
参数
int time:等待的时间,单位毫秒(ms)
返回值

示例
Sleep(1500)
使程序在此处等待1.5秒
StartTime()
开始系统计时,或重新开始计时
参数

返回值

示例
StartTime()
开始计时
GetTime()
获取从上次开始系统计时到现在经过的时间,单位毫秒
获取时间之前必须调用一次StartTime(),否则其返回值无意义
参数

返回值
int time:从上次开始系统计时到现在经过的时间,单位毫秒
示例
StartTime()

int time = GetTime()
time的值为经过的时间,单位毫秒

传感器设置

传感器设置
函数/作用 参数/返回值/说明
SetValue(int port, int value)
设置传感器的工作参数
目前仅针对“障碍传感器”有效,设置其它传感器无作用
参数
int port:障碍传感器的端口
int value:障碍传感器的检测距离,有效值为0~500,参数小于0时自动调整为0,大于500时自动调整为500
返回值

示例
SetValue(91, 200)
设置91端口的障碍传感器的检测距离为200

滑杆驱动

滑杆驱动
函数/作用 参数/返回值/说明
SetPrismatic(int port, int pos)
驱动滑杆上的滑块运行到指定的位置
端口有效范围为91~120
位置有效范围为0至不同滑杆的最远位置
参数
int port:滑杆的端口
int pos:滑块的位置
返回值

示例
SetPrismatic(91, 35)
设置91端口的滑杆移动到35的位置
SetPrismatic(string args)
驱动多个滑杆的滑块运行到指定的位置
参数
string args:字符串型式逗号分隔的滑杆参数,形式为”int port1, int pos1, int port2, int pos2, …, int portN, int posN”
参数中 的port与pos必须成对出现
返回值

示例
SetPrismatics(“91, 5, 92, 10”)
设置端口91、91的滑杆的滑块分别运行到5、10的位置
SetPrismatics(string args, int time)
驱动多个滑杆的滑块在指定的时间内运行到指定的位置
滑杆的滑块在指定的时间内平滑地运行到指定的位置
参数
string args:字符串型式逗号分隔的滑杆参数,形式为”int port1, int pos1, int port2, int pos2, …, int portN, int posN”
参数中 的port与pos必须成对出现
int time:滑杆的滑块运行到指定位置的时间
返回值

示例
SetPrismatics(“91, 5, 92, 10”, 2000)
设置端口91、91的滑杆的滑块在2秒钟内分别运行到5、10的位置

弹射驱动

弹射驱动
函数/作用 参数/返回值/说明
TanShe(int port1, int force1, int port2, int force2, …, int portN, int forceN)
驱动指定端口的弹射模块的弹射力
参数
int port1, int force1:第1组弹射模块的端口及力参数
int port2, int force2:第2组弹射模块的端口及力参数
int portN, int forceN:第N组弹射模块的端口及力参数
返回值

示例
TanShe(121, 1000, 122, 500)
设置端口为121、122的弹射模块的弹射力分别为1000、500。

画笔驱动

画笔驱动
函数/作用 参数/返回值/说明
PenStartWrite(int port)
设置画笔进入画点或者画线状态
参数
int port:画笔端口
返回值

示例
PenStartWrite(91)
设置91端口的画笔进入画点或者画线状态。
PenStopWrite(int port)
设置画笔停止画
参数
int port:画笔端口
返回值

示例
PenStopWrite(91)
设置91端口的画笔停止画点或者画线。
SetPenSize(int port, int size)
设置指定端口的画笔的尺寸
参数
int port:画笔端口
int size:画笔尺寸
返回值

示例
SetPenSize(91, 5)
设置91端口的画笔的尺寸为5。
SetPenColor(int port, “r, g, b”)
设置指定端口的画笔的RGB颜色
参数
int port:画笔端口
string r,g,b:字符串型逗号分隔的RGB颜色,形式为”r, g, b”
返回值

示例
SetPenColor(91, “255, 0, 0”)
设置91端口的画笔颜色为RGB(255,0,0),即红色。

LED设置

LED设置
函数/作用 参数/返回值/说明
SetLED(int port, string state, string color)
设置指定端口的LED的状态及颜色
参数
int port:LED端口
string state:LED状态,”开”,”关”,状态为”开”时,可选颜色,状态为”关”时颜色为黑
string color:颜色,7种可选:”红”, ”橙”, ”黄”, ”绿”, ”蓝”, ”靛”, ”紫”
返回值

示例
SetLED(3, “关”)
设置3号端口的LED状态为关闭
SetLED(3, “开”, “红”)
设置3号端口的LED状态为开,颜色为红色

传感器

传感器
函数/作用 参数/返回值/说明
GetDist(int port)
获取指定端口的距离传感器与物体的距离
距离传感器的的返回值为0~3000
参数
int port:距离传感器端口
返回值
int dist:距离传感器与物体的距离
示例
int dist = GetDist(31)
获取31端口的距离传感器与物体的距离
GetObst(int port)
获取指定端口的障碍传感器是否检测到障碍
检测到障碍时返回1,未检测到障碍时返回0
参数
int port:障碍传感器端口
返回值
int obst:障碍传感器是否在其检测范围内检测到障碍物
示例
int obst = GetObst(31)
获取31端口的障碍传感器是否检测到障碍
GetGray(int port)
获取指定端口的灰度传感器检测到的灰度值
灰度传感器的返回值为检测到的颜色的灰度值,范围为0~255。
注:场景中物体并不是所有物体都能检测到灰度值,不能被检测的物体的灰度值为0
参数
int port:灰度传感器端口
返回值
int gray:灰度传感器检测到的颜色的灰度值0~255
示例
int gray = GetGray(31)
获取31端口的灰度传感器检测到的灰度值
GetLight(int port)
获取指定端口的光线传感器检测到光线强度
参数
int port:光线传感器端口
返回值
int light:光线传感器检测到的光线强度
示例
int light = GetLight(31)
获取31端口的光线传感器检测到的光线强度
GetTouch(int port)
获取指定端口的接触传感器是否接触到物体
接触传感器的返回值为接触到物体时返回1,未接触到物体时返回0
参数
int port:接触传感器端口
返回值
int touch:接触传感器是否接触到物体
示例
int touch = GetTouch(31)
获取31端口的接触伟感器是否接触到物体
GetCompass(int port)
获取指定端口的指南针传感器的角度
指南针传感器检测其+Z轴与场景正北方向的夹角,返回值范围为0~359
参数
int port:指南针传感器端口
返回值
int dir:指南针传感器的角度
示例
int dir = GetCompass(31)
获取31端口的指南针伟感器的角度
GetHeight(int port)
获取指定端口的海拔高度计的海拔
参数
int port:海拔高度计端口
返回值
int height:海拔高度计的海拔
示例
int height = GetHeight(31)
获取31端口的海拔高度计的海拔
GetLightSignal(int port)
获取指定端口的红外探测器的红外强度
参数
int port:红外传感器端口
返回值
int lightSignal:红外传感器检测到的红外强度示例
int lightSignal = GetLightSignal(31)
获取31端口的红外传感器的红外强度
GetJoint(int port)
获取指定端口的伺服电机的当前角度
参数
int port:伺服电机端口
返回值
int deg:伺服电机当前角度
示例
int deg = GetJoint(91)
获取91端口的伺服电机的当前角度
GetHostBattery(71)
获取主机电池电量
参数
int port:主机电池电量端口,必须为71
返回值
int hostBattery:主机电池电量
示例
int hostBattery = GetHostBattery(71)
获取主机电池电量