虚拟传感器与电子件使用方法类似,以下为虚拟传感器相关积木接口的说明。
示例程序(循迹传感器):
1.设计一段轨迹,将模型放置于轨迹中间位置;
2.将模型设为循迹传感器,设置时需要设置左右2个灰度检测点;
3.程序设计逻辑:
①如果循迹传感器左检测点检测到黑色,则将向前移动速度设为0,向左转向0.005弧度;
②如果循迹传感器右检测点检测到黑色,则将向前移动速度设为0,向右转向0.005弧度;
③如果循迹传感器左右检测点均检测为白色,则将向前移动速度设为3。
4.1 设置距离传感器
此函数用于设置距离传感器启动与否。
示例:
zw_set_distance_sensor_enable(‘body_1’, ‘Enable’)
积木块:
参数说明:
SensorName | 距离传感器的名称(字符串) |
---|---|
State | 距离传感器的状态,选项为’’Enable”或”Disable”分别表示启动或不启动。 |
4.2 获取距离传感器距离
此函数用于获取距离传感器的测量结果,返回传感器模型检测方向上传感器模型表面上的点到碰到的第一个模型的面上的点的距离。
示例:
zw_get_distance_sensor_value(‘body_1’)
积木块:
参数说明:
SensorName | 距离传感器的名称(字符串) |
---|---|
4.3 设置触碰传感器
此函数用于设置触碰传感器启动与否。
示例:
zw_set_touch_sensor_enable(‘body_1’, ‘Enable’)
积木块:
参数说明:
SensorName | 触碰传感器的名称(字符串) |
---|---|
State | 触碰传感器的状态,选项为’’Enable”或”Disable”分别表示启动或不启动。 |
4.4获取触碰传感器触碰
此函数用于获取触碰传感器的测量结果,返回传感器模型与其他模型触碰与否,若触碰到则返回1,否则返回其他。
示例:
zw_get_touch_sensor_value(‘body_1’)
积木块:
参数说明:
SensorName | 触碰传感器的名称(字符串) |
---|---|
4.5 设置力传感器
此函数用于设置力传感器启动与否。
示例:
zw_set_force_sensor_enable(‘body_1’, ‘Enable’)
积木块:
参数说明:
SensorName | 力传感器的名称(字符串) |
---|---|
State | 力传感器的状态,选项为’’Enable”或”Disable”分别表示启动或不启动。 |
4.6 获取力传感器测量力度
此函数用于获取力传感器的测量结果,返回传感器模型所受的力矢量。
示例:
zw_get_force_sensor_value(‘body_1’)
积木块:
参数说明:
SensorName | 力传感器的名称(字符串) |
---|---|
4.7 设置光强传感器
此函数用于设置光线传感器启动与否。
示例:
zw_set_light_sensor_enable(‘body_1’, ‘Enable’)
积木块:
参数说明:
SensorName | 光线传感器的名称(字符串) |
---|---|
State | 光线传感器的状态,选项为’’Enable”或”Disable”分别表示启动或不启动。 |
4.8 获取光强传感器测量光强
此函数用于获取光线传感器的测量结果,返回传感器模型检测到的光照强度。
示例:
zw_get_light_sensor_value(‘body_1’)
积木块:
参数说明:
SensorName | 光线传感器的名称(字符串) |
---|---|
4.9 设置位置传感器
此函数用于设置位置传感器启动与否。
示例:
zw_set_position_sensor_enable(‘body_1’, ‘Enable’)
积木块:
参数说明:
SensorName | 位置传感器的名称(字符串) |
---|---|
State | 位置传感器的状态,选项为’’Enable”或”Disable”分别表示启动或不启动。 |
4.10 获取位置传感器坐标
此函数用于获取位置传感器的测量结果,返回传感器模型对应坐标轴上的位置坐标。
示例:
zw_get_position_sensor_value(‘ ‘,’x’)
积木块:
参数说明:
SensorName | 位置传感器的名称(字符串) |
---|---|
4.11 设置颜色传感器
此函数用于设置颜色传感器启动与否。
示例:
zw_set_color_sensor_enable(‘body_1’, ‘Enable’)
积木块:
参数说明:
SensorName | 颜色传感器的名称(字符串) |
---|---|
State | 颜色传感器的状态,选项为’’Enable”或”Disable”分别表示启动或不启动。 |
4.12 获取颜色传感器结果
此函数用于获取颜色传感器的测量结果,返回传感器模型检测到的颜色在给定偏差内是否与给定颜色相符,若相符则返回True,否则返回False。
示例:
zw_get_color_sensor_value(‘body_1’, zw_vec3(65,128,165), 10)
积木块:
参数说明:
SensorName | 颜色传感器的名称(字符串) |
---|---|
Color | 给定颜色的(R,G,B)向量 |
Deviation | 给定偏差 |
4.13 启动灰度传感器
此函数用于设置灰度传感器
示例:
zw_set_tracking_sensor_enable(‘ ‘, ‘Enable’)
积木块:
参数说明:
SensorName | 灰度传感器的名称(字符串) |
---|---|
State | 灰度传感器的状态,选项为’’Enable”或”Disable”分别表示启动或不启动。 |
4.14 检测灰度传感器左右灰度
灰度传感器是通过对地面的颜色灰白程度来判断,并控制实体运动的。
示例:
zw_get_tracking_sensor_detect(‘ ‘, ‘left’, ‘black’)
积木块:
案例演示:
根据传感器左右两侧检测点检测到的黑色程度来判定车身的移动方向。
参数说明:
SensorName | 灰度传感器的名称(字符串) |
---|---|
left right all none | 左边或右边 |
Color | 黑色或白色 |
4.15 启动循迹传感器
此函数用于启动循迹传感器
示例:
zw_set_track_sensor_enable(‘ ‘, ‘Enable’)
积木块:
参数说明:
SensorName | 循迹传感器的名称(字符串) |
---|---|
State | 灰度传感器的状态,选项为’’Enable”或”Disable”分别表示启动或不启动。 |
4.16 检测循迹传感器左右轨迹
传感器根据地面的轨迹分布情况来决策车身的运动方向。
示例:
zw_get_track_sensor_detect(‘ ‘, ‘left’)
积木块:
特殊说明:
循迹传感器的识别是通过识别轨迹来运转的,所以就算循迹轨迹不是黑色的也没有影响。
只需要给这条轨迹的物理属性设置为轨迹即可。
循路逻辑与灰度传感器一致。
参数说明:
SensorName | 循迹传感器的名称(字符串) |
---|---|
left right all none | 左边、右边、全部或没有 |