1.姿态传感器()(校正)
(1)功能:校正姿态传感器固定方位初始值或将姿态传感器恢复出厂设置
(2)参数:P1-P8,传感器连接端口
(3)参数:“校正”“重置”,校正或重置姿态传感器
:::info
校正:让传感器以当前状态为零点初始化。
重置:让传感器恢复出厂初始设置。
:::
范例:校正姿态传感器
一段时间后校正姿态传感器
import rcu
VAR_返回值 = 0
def task1():
global VAR_返回值
while not((rcu.GetSysTime() > 5000)):
VAR_返回值 = rcu.GetAHRS(1,1,0)
rcu.SetAHRS(1,1)
VAR_返回值 = rcu.GetAHRS(1,1,0)
task1()
2.姿态传感器()的(横滚角)数值
(1)功能:读取姿态传感器多轴向角度数值
(2)参数:P1-P8,传感器连接端口
(3)参数:横滚角、俯仰角、偏航角、aX、aY、aZ、gX、gY、gZ
(4)返回值:对应角的数值
范例:显示欧拉角
显示欧拉角中的三种常见角度值
import rcu
def task1():
while True:
rcu.SetDisplayVar(1,rcu.GetAHRS(1,1,0),0xFFE0,0x0000)
rcu.SetDisplayVar(2,rcu.GetAHRS(1,2,0),0xFFE0,0x0000)
rcu.SetDisplayVar(3,rcu.GetAHRS(1,3,0),0xFFE0,0x0000)
task1()
3.激光传感器()数值 模式为(标准)
(1)功能:读取激光测距传感器与前方物体的距离数值
(2)参数:P1-P8,传感器连接端口
(3)参数:“标准”“长距离”,设置激光传感器的模式
(4)返回值:20-2000,单位毫米
范例:检测物体
检测800毫米内是否有物体
:::info
长距离模式测量距离更远,但是测量精度会有所下降。
一般情况下,标准模式(即最大1.2米的测距模式)可以应用在绝大多数场景。
长距离模式,2米左右的测距需要在“环境光较暗,目标较白”应用环境才能做到稳定测量的。一般的应用环境,可以做到的1.5米内测量。所以稳定测量的实际量程和应用场景有关。
:::
import rcu
VAR_返回值 = 0
def task1():
global VAR_返回值
while True:
VAR_返回值 = rcu.GetLaserDist(1,0)
if (VAR_返回值 < 800):
rcu.SetDisplayString(1,"已接近物体",0xFFE0,0x0000)
else:
rcu.SetDisplayString(1,"前方无物体",0xFFE0,0x0000)
task1()
4.红外测距传感器()数值
(1)功能:读取红外测距传感器与前方障碍物的距离数值
(2)参数:P1-P8,传感器连接端口
(3)返回值:1-10,数值代表返回红外线强度,不具备具体单位
范例:检测物体
检测物体到红外测距传感器的模糊距离
import rcu
VAR_返回值 = 0
def task1():
global VAR_返回值
while True:
VAR_返回值 = rcu.GetShortIRDist(1)
if (VAR_返回值 < 5):
rcu.SetDisplayString(1,"已接近物体",0xFFE0,0x0000)
else:
rcu.SetDisplayString(1,"前方无物体",0xFFE0,0x0000)
task1()
5.手势识别传感器()数值
(1)功能:读取手势传感器识别到的手势动作
(2)参数:P1-P8,传感器连接端口
(3)返回值:0-8
返回值 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
---|---|---|---|---|---|---|---|---|---|
含义 | 没有检测到手势 | 向左挥手 | 向右挥手 | 向下挥手 | 向上挥手 | 向前挥手 | 向后挥手 | 顺时针挥手 | 逆时针挥手 |
范例:手势控制马达转动方向
左右挥手控制马达正反转动
import rcu
VAR_返回值 = 0
def task1():
global VAR_返回值
while True:
VAR_返回值 = rcu.GetGesture(1)
if (VAR_返回值 == 1):
rcu.SetDisplayString(1,"这是左挥手",0xFFE0,0x0000)
rcu.SetMotor(1,-50)
if (VAR_返回值 == 2):
rcu.SetDisplayString(1,"这是右挥手",0xFFE0,0x0000)
rcu.SetMotor(1,50)
task1()
6.气压传感器()数值
(1)功能:读取气压传感器检测的气压值
(2)参数:P1-P8,传感器连接端口
(3)返回值:300-1100,单位为Pa
范例:大气压对比
对比当前气压与标准大气压
import rcu
VAR_返回值 = 0
def task1():
global VAR_返回值
while True:
VAR_返回值 = rcu.GetAirPressure(1)
if (VAR_返回值 > 101325):
rcu.SetDisplayString(1,"气压大于标准大气压",0xFFE0,0x0000)
else:
rcu.SetDisplayString(1,"气压小于标准大气压",0xFFE0,0x0000)
task1()
7.温湿度传感器()(温度)
(1)功能:读取温湿度传感器检测的温度或湿度
(2)参数:P1-P8,传感器连接端口
(3)参数:“温度”“湿度”,选择检测的内容
(4)返回值(温度):-40-125,单位℃
(4)返回值(湿度):0-100,单位%RH
范例:温控灯
温度控制彩灯模块
import rcu
VAR_湿度 = 0
VAR_温度 = 0
def task1():
global VAR_湿度,VAR_温度
while True:
VAR_湿度 = rcu.GetSht30(1,1)
VAR_温度 = rcu.GetSht30(1,0)
rcu.SetDisplayString(1,str(VAR_湿度),0xFFE0,0x0000)
rcu.SetDisplayString(2,str(VAR_温度),0xFFE0,0x0000)
if (VAR_温度 > 20):
rcu.Set3CLed(1,4)
task1()
8.磁敏传感器()(磁场强度)
(1)功能:读取磁敏传感器检测到的磁场强度或方向
(2)参数:P1-P8,传感器连接端口
(3)参数:“磁场强度”“磁场方向”,选择检测的内容
(4)返回值(磁场强度):0-2000,表示磁场的强弱
(5)返回值(磁场方向):0-2,1表示靠近S极,2表示靠近N极,0表示无
范例:检测磁体
磁强度较高时,显示检测到带磁物体
import rcu
VAR_返回值 = 0
def task1():
global VAR_返回值
while True:
VAR_返回值 = rcu.GetMagnetic(1,0)
if (VAR_返回值 > 1500):
rcu.SetDisplayString(1,"检测到带磁物体",0xFFE0,0x0000)
else:
rcu.SetDisplayString(1,"",0xFFE0,0x0000)
task1()
9.扫码摄像头P8数值
(1)功能:读取扫描摄像头识别到的二维码ID值
(2)返回值:0-255,对应二维码ID值,0为未识别
范例:识别二维码
识别二维码并显示文本
import rcu
VAR_返回值 = 0
def task1():
global VAR_返回值
while True:
VAR_返回值 = rcu.GetScanCamera()
if (VAR_返回值 == 0):
rcu.SetDisplayString(1,"无二维码",0xFFE0,0x0000)
else:
if (VAR_返回值 == 1):
rcu.SetDisplayString(1,"二维码值为1",0xFFE0,0x0000)
task1()
10.智慧眼()检测数值
(1)功能:读取智慧眼红外检测数值
(2)参数:P1-P8,传感器连接端口
(3)返回值: 0-15,单位为cm
范例:跟踪移动
检测距离实现跟踪
import rcu
VAR_返回值 = 0
def task1():
global VAR_返回值
while True:
VAR_返回值 = rcu.GetSmartEyeDist(1)
if (VAR_返回值 < 5):
rcu.SetMotor(1,-50)
else:
if (VAR_返回值 > 8):
rcu.SetMotor(1,50)
else:
rcu.SetMotor(1,0)
task1()
11.智慧眼()红外接收数据
(1)功能:读取智慧眼红外接收数据,需要有另一台设备发出红外信息
(2)参数:P1-P8,传感器连接端口
范例:接收到对应数据
接收数据后显示文本
import rcu
VAR_返回值 = 0
def task1():
global VAR_返回值
while True:
VAR_返回值 = rcu.GetSmartEyeIRcode(1)
if (not((VAR_返回值 == 0))):
rcu.SetDisplayString(1,str(VAR_返回值),0xFFE0,0x0000)
task1()
12.智慧眼()红外发送数据50
(1)功能:发送指定红外数据
(2)参数:P1-P8,传感器连接端口
(3)参数:0-255
范例:发送红外数据
按屏幕发送红外数据
import rcu
def task1():
while True:
if rcu.GetTouchScreen():
rcu.SetSmartEyeIRcode(1,20)
task1()
13.智慧眼()模式为(彩虹流水的)颜色○
(1)功能:设置智慧眼的亮灯模式以及灯的颜色
(2)参数:P1-P8,传感器连接端口
范例:设置智慧灯
设置智慧灯的模式和颜色
import rcu
def task1():
rcu.SetSmartEyeMode(1,1,0xFF0000)
task1()
14.智慧眼()颜色为○○○○○○○○
(1)功能:设置智慧眼不同颜色的灯
(2)参数:P1-P8,传感器连接端口
范例:设置智慧眼颜色
设置智慧眼不同位置的颜色
import rcu
def task1():
rcu.SetSmartEyeAllLed(1,0xFF0000,0xFF7F00,0xFFFF00,0xFF00,0xFFFF,0xFF,0x8A00FF,0xFFFFFF)
task1()
15.点阵屏()清屏
(1)功能:使点阵屏所有灯光熄灭
范例:清除已经显示的点阵信息
显示默认的图案,一段时间后清除
import rcu
def task1():
rcu.SetDisplayLatticePic(1,"00003c3c6666424242420000000000000000000004200c301818f00f00000000",8)
rcu.SetWaitForTime(3)
rcu.SetDisplayLatticeClear(1)
task1()
16.点阵屏()显示图案亮度(8)
(1)功能:使点阵屏显示指定图案
(2)参数:P1-P8,连接端口
(3)参数:416位“0000”数据,每4位数据表示一排点阵数据,采用十六进制计算。
(4)参数:0-15,16级可控亮度调整
*范例:显示沮丧
点阵屏显示沮丧表情
import rcu
def task1():
rcu.SetDisplayLatticePic(1,"000000000000081014282244418200008001c0036006300c1818081000000000",8)
task1()
举个例子:依次从点亮1个灯直到16个灯的数字表达式为—— 1,3,7,f,1f,3f,7f,ff,1ff,3ff,7ff,fff,1fff,3fff,7fff,ffff
序号 | 二进制(灯光状态) | 十进制 | 十六进制(f代表数字15) |
---|---|---|---|
1 | 1 | 1 | 1 |
2 | 11 | 3 | 3 |
3 | 111 | 7 | 7 |
4 | 1111 | 15 | f |
5 | 11111 | 37 | 1f |
6 | 111111 | 77 | 3f |
7 | 1111111 | 177 | 7f |
8 | 11111111 | 377 | ff |
9 | 111111111 | 777 | 1ff |
10 | 1111111111 | 1777 | 3ff |
11 | 11111111111 | 3777 | 7ff |
12 | 111111111111 | 7777 | ffff |
17.点阵屏P1X()Y()灭亮度(8)
(1)功能:使点阵屏指定坐标灯光点亮或熄灭
(2)参数:P1-P8,连接端口
(3)参数:1-16,对应X坐标
(4)参数:1-16,对应Y坐标
(5)参数:0/1,对应亮/灭
(6)参数:0-15,16级可控亮度调整
范例:显示点阵直线
在点阵屏上显示一条从上往下的直线
import rcu
VAR_i = 0
def task1():
global VAR_i
VAR_i = 10
for count in range(10):
rcu.SetDisplayLatticeXY(1,10,VAR_i,1,8)
VAR_i += 1
task1()
18.点阵屏P1显示字符()方向左移速度()亮度(8)
(1)功能:使点阵屏显示字符串
(2)参数:字符串,支持中文与英文字符,不支持特殊符号
(3)参数:“左移”“右移”“上移”“下移”,字符移动方向
(4)参数:0-100,控制显示字体轮播速度
(5)参数:0-15,16级可控亮度调整
范例:欢迎光临移动标语
点阵屏显示长串字符
import rcu
def task1():
rcu.SetDisplayLatticeString(1,"欢迎光临",0,100,8)
task1()