1.面向水下的可见光通信装置,其特征在于,包括MCU主控电路、RS485接口电路、可见光光源面板、光信号接收装置、调制电路、解调电路、MPU9250姿态传感器,所述MCU通过调制电路与所述可见光光源的驱动电路控制电连接,所述光信号接收装置通过解调电路与MCU信号传递电连接,陀螺仪与MCU信号传递电连接;
通信过程中进行数据传输时,可见光通信装置通过RS485总线接收上位机所发送的数据信息,并将其切片打包成一帧包含64字节的数据,并通过MCU控制调制处理后转换为二进制状态的TTL电平信号并输入至光源驱动电路的控制引脚,进而控制驱动电路的通断以驱动可见光光源频闪,从而形成向其他可见光通信装置发送的频闪信号作为通信信号;
通信过程中接收通信信号时,在接收到光源之前会对其进行物理层的滤光片过滤,排除杂光干扰并经过透镜汇聚至硅光电二极管窗口进行光源信号采集,并将采集到的光源信号转换成微弱电流信号传入至解调电路,通过解调电路还原成原始TTL电平信号后送入MCU检测引脚,并由MCU将TTL电平信号还原成相应原始数据;
并且,通信开始前,发送方可见光通信装置中的陀螺仪采集自身的姿态数据并送入对应MCU进行分析,MCU基于姿态数据判断姿态是否满足最低通信要求,若满足则进行握手,若不满足则通过RS485总线向上位机返回通讯失败信号并根据三维姿态数据调整合适的通讯速率,在单位时间后重新发送握手信号;
通信过程中,以定时器所设置的定时时间为一次单位通信时间段进行通信,在数据通信过程中发送方可见光通信装置中的陀螺仪不断采集发送方可见光通信装置的姿态数据并送入对应MCU进行分析,若装置姿态异常则发送方可见光通信装置中MCU调整通信速率,并在单位时间后重新发送握手信号,因发送方速率调整后接受方将无法接收到准确数据信息,因此接收方会在一次单位通信时间段后同步调整通讯速率,直到接收到发送方所发送的握手信号并成功进行应答,此时以该调整后的速率重新进行握手过程并开始通信。
2.一种如权利要求1所述面向水下的可见光通信装置的通信方法,其特征在于,包括以下步骤:
步骤1、发送方获取自身姿态数据,并判断自身姿态是否满足通信条件,若发送方可见光通信装置姿态满足通信条件则进行下一步骤,若发送方可见光通信装置不满足通信条件则向上位机反馈无法通信状态,同时发送方根据自身姿态数据调整通讯速率并重新发送握手信号,直至通信双方握手成功再进行下一步骤;
步骤2、发送方可见光通信装置向接收方可见光通信装置发送握手信号,接收方可见光通信装置接收握手信号并向发送方可见光通信装置发送应答信号,由此完成发送方、接收方可见光通信装置的一次握手,一次握手成功后进行二次握手,两次握手均成功后则表明成功搭建稳定通信链路后进行下一步骤;
步骤3、握手成功后双方同步开启定时器,以定时器所设置的时间为单位时间,发送方可见光通信装置在单位时间内向接收方可见光通信装置发送数据信号并进行次数统计,同时发送方可见光通信装置在通信过程中实时获取自身姿态数据,若通信过程中发送方可见光通信装置姿态异常则根据装置的三维姿态数据调整自身通讯速率并在此单位时间结束后发送方可见光通信装置向接收方可见光通信装置重新发送握手信号,重复步骤2,若通信过程中发送方可见光通信装置姿态正常,则在单位时间后发送方可见光通信装置向接收方可见光通信装置发送SYN同步信号以确认通信过程中双方是否都能够正常的进行数据发送与接收,接收方可见光通信装置成功接收到SYN同步信号后,若数据正常则接收方发送二次ACK应答信号,若发送方接收到接收方所发送的二次ACK应答信号,则将Normal_Reve参数自增并进行下一单位时间的数据通信,当Normal_Reve连续自增且值达到设定参数值时,则表明当前通信环境较好,此时双方同步提升一级通信速率,并重复步骤2。
3.根据权利要求2所述的可见光通信装置的通信方法,其特征在于,步骤2中,第一次握手信号的数据帧格式包括同步帧头SOF字段、功能Function字段、通信速率BAUD字段、0x01数据字段以及同步EOF帧尾字段,其中同步帧头SOF字段与同步EOF帧尾字段为固定的数据帧格式中的同步帧头与同步帧尾,功能Function字段表示当前数据命令的功能是控制命令还是数据传输命令,通信速率BAUD字段表明当前握手过程是以何种速率进行握手;
第二次握手信号的数据帧格式包括同步帧头SOF字段、功能Function字段、0x02数据字段以及同步EOF帧尾字段;
步骤2中,握手应答信号的数据帧格式包括同步帧头SOF字段、功能Function字段、0xAA数据字段以及同步EOF帧尾字段;
步骤3中,通信速率BAUD字段通过枚举的方式进行分级,其中逐级降低通信速率、逐渐提升通信速率都是在此基础上进行。
4.根据权利要求2所述的可见光通信装置的通信方法,其特征在于,所自定义的数据帧格式为:同步帧头SOF字段、功能Function字段、载荷数据字段、校验位和同步EOF帧尾字段,其中校验位使用CheckSum校验方式进行校验,后续帧格式功能不同在于功能Function字段不同。
5.根据权利要求2所述的可见光通信装置的通信方法,其特征在于,功能Function字段为4个字节的数据段,其中前两个字节表明当前数据包为命令操作还是传输的数据,后两个字节仅当当前数据包为命令操作时有效。
6.根据权利要求2所述的可见光通信装置的通信方法,其特征在于,步骤3中,当前单位时间发送方可见光通信装置判断当前单位时间自身姿态正常时,在当前单位时间数据信号发送结束后,由发送方可见光通信装置向接收方可见光通信装置发送SNY同步信号,所述SNY同步信号包含发送方可见光通信装置当前单位时间的数据发送次数;
接收方可见光通信装置接收到SNY同步信号时将数据发送次数与自身数据接收次数进行比较,若比较结果为一致时,则接收方可见光通信装置判断通信速率正常,由接收方可见光通信装置向发送方可见光通信装置发送第二ACK应答信号,发送方可见光通信装置接收此时第二ACK应答信号时获知通信速率正常,将发送方Normal_Reve参数自增,并重复步骤3以进行下一单位时间的数据信号发送;
当Normal_Reve参数连续自增至100时,表明当前通信环境较好,此时发送方可见光通信装置逐级提升通信速率,并将通讯速率对应的BAUD值放入SYN同步信号中,接收方可见光通信装置接收到此SYN同步信号后解析BAUD值,同步调整为相同通信速率并发送第二ACK应答信号,当发送方可见光通信装置接收到第二ACK应答信号后,重复步骤3以进行下一单位时间的数据信号发送;
若比较结果不一致时,则接收方可见光通信装置判断通信速率异常,由接收方可见光通信装置在当前单位时候后逐级降低通信速率,因速率发生改变因此发送方将无法接收应答信号,因此在当前单位时间过后发送端同步逐级降低通讯速率并重复步骤2、3以进行下一单位时间的数据信号发送。
7.根据权利要求6所述的可见光通信装置的通信方法,其特征在于,所述SNY同步信号的数据帧格式中功能Function字段前两个位值为0x1A,后两位值为Send_Count值, Send_Count字段为数据发送次数的计数值,当满足逐级提升通信速率时,该值为提升速率所对应的BAUD值;
所述第二ACK应答信号的数据帧格式中功能Function字段前两个位值为0x0E时则表明通信速率正常,在通信速率正常前提下后两位值默认为0x0E,当满足逐级提升通信速率时,该值为提升速率所对应的值。
8.根据权利要求7所述的可见光通信装置的通信方法,其特征在于,步骤1、2、3中,可见光通信装置使用通用异步收发器UART融合直接内存访问DMA双缓冲方式进行数据接收。