预置位功能实现需求
一、技术描述:
1.控制接口
3节 2.5mm耳机口 仅使用一个信号脚和一个GND,同时作为输入输出 。

▲ 图1.1 LANC通讯结构
2.LANC协议
单线半双工串行通信。由摄像机生成电报帧,创建8个起始位后面跟8位(1个字节)和一个长停止位。每一位的电平持续时间为104us,两个起始位之间间隔1200us-1400us 。
之间,两个电报帧之间间隔20ms(PAL/625)或16.6ms(NTSC/525)。
通信时序可以理解为9600波特率下的UART,起始位1位,数据位8位,停止位2位。

▲ 图1.1 LANC 通讯协议
3.通信规则
通信由摄像机发起,不同的厂家LANC协议有差异。
有些需要通过若干条握手指令才能完成连接匹配,然后才可以对摄像机进行控制。之后摄像机与控制器之间需要以20ms左右的间隔持续通信,若通信中断则无法继续控制,需要重新开始握手连接。
有些较简单,只需要控制器在收到摄像机的指令后立即回复控制指令即可生效。
4.变焦控制
标准LANC协议支持变焦的8档速度控制,持续发送指令后摄像机镜头会持续的变焦。
5.镜头预置位
KXWELL云台设备支持预置位功能,所谓镜头预置位,就是将某一时刻的镜头位置记录下来存储到内存中,然后可以通过按键等触发的方式让镜头回到之前所记录的位置。

6.基于LANC的手持机镜头预置位实现
标准LANC不包含镜头绝对位置指令,因此对于镜头变焦是一个开环控制。
当前的实现方式是通过软件计步的方式,在不超限的前提下,记录发送指令中往广角和特写的方向的计数值,以特写方向为正计数。调用预置位时根据当前程序计数与存储的计数对比,发送相应的指令若干次。
7.步骤简述:
1. 开机自动回到最广角位置,此时软件计数为0 ;
2. 发送特写指令100次,此时软件计数为100,存储到1号预置位
3. 继续发送特写指令50次,此时软件计数为150
4. 调用1号预置位,程序判定需要往广角运动,发送50次
5. 发送广角指令50次后停止,完成预置位调用

▲ 图1.2 讨论的腾讯会议
二、现存问题
1) 关于边界问题,程序无法检测到边界,所以一旦越界运动,计数值就失去了准确性 ;
2) 累计误差问题,实际测试(发送特写200次)和(发送特写100次,再发送广角50次,再发送特写100次,再发送广角50次,再发送特写100次),虽然往特写方向的计数值一样,但实际运动的行程是不一样的
3) 如果每次调用时都回到镜头最广角是可以满足预置位调用需求,但不满足现场应用;
1. 功能预期:
在不定制摄像机协议的情况下,任意时刻调用之前存储的任意预置位可回到之前存储的位置;
三、初步求解方案
针对会议中讨论的问题,建议:
- 首先把现在存在的问题通过技术方式进行定量化,以便可以:
- 评估出现运动误差的分布,比如概率、方差、直方图;
- 对于逐渐分析措施(比如优化通讯物理结构、改进控制指令参数等)的效果评估;
- 验证系统是否能够最终被解决;
- 其次,如果在现在被测对象的物理层无法直接检测到指令开环执行结果(比如在镜头控制环增加编码器),建议可以利用图像处理的方法,检测摄像机得到的测试图像的变化,获得执行的结果。
- 这方面可以参考计算机视觉的方法来获得镜头成像的物理参数(内参)和环境参数(外参);
如果在上述方案解决过程中遇到问题,可以考虑把可以试验的系统发送到我的实验室,我可以协助进行解决。
完成以上分析之间,下面可以确定是否在现有的开环状态下能够完成镜头的精确控制。
● 相关图表链接:
- 图1.1 LANC无力通讯结构
- 图1.1 LANC 通讯协议
- 图1.2 讨论的腾讯会议

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/24286.html