欢迎光临小豌豆知识网!
当前位置:首页 > 电学技术 > 电通讯技术> 一种配网自动化主站变电站内开关的遥控方法独创技术19744字

一种配网自动化主站变电站内开关的遥控方法

2021-02-02 20:28:18

一种配网自动化主站变电站内开关的遥控方法

  技术领域

  本发明涉及配网自动化技术领域,具体涉及一种配网自动化主站变电站内开关的遥控方法。

  背景技术

  目前大部分区域主网自动化系统与配网自动化系统存在不同系统分开运行的情况,例如主网A系统与配网B系统,A系统主管站内的设备监控,B系统主管配电网设备监控,两系统间的交互仅限于SFTP数据传输,无法实现主配系统间的遥控交互命令;在日常工作中,配网调度员接收到调度命令时,需在B系统上查看分析涉及的具体配电线路,核实该线路属于A系统的哪个出线开关,然后再到A系统查找到该线路所属变电站,然后打开接线图查找馈线编号,再调出该开关的遥控界面进行遥控,期间需要频繁在两套系统中进行开关的监视及遥控,耗时比较长,查找工作繁重,过多的系统主机及显示屏造成调度办公空间不足,影响日常运行监护工作,主配系统遥控数据交互的瓶颈也不利于主配系统电网故障智能判断隔离功能的开发。

  发明内容

  为此,本发明提供一种配网自动化主站变电站内开关的遥控方法,以解决现有技术中由于配网自动化主站内主、配网系统之间不能执行实时的遥控命令、无法对传输数据进行模型校验的问题。

  为了实现上述目的,本发明的实施方式提供如下技术方案:

  一种配网自动化主站变电站内开关的遥控方法,包括以下步骤:

  在配电自动化系统内设置液晶板虚拟按键模块,所述液晶板虚拟按键模块通过JMS遥控进程连接基于Linux系统的多线程遥控模块;

  在CPU通信模块内部设置数据缓存区供多个线程共享,引入用于确保多线程同步访问CAN数据缓存区数据的互斥锁机制;

  线程控制协议校验主线程并对配网内部智能遥信模块的子线程进行调用;

  在液晶板虚拟按键模块与智能遥控模块交互连接后,将数据同步至数据采集与处理单元,利用控制指令校验配网相应阈值。

  作为本发明的一种优选方案,所述CPU通信模块主线程首次运行时需初始化以及配置规约参数,并分别创建CAN线程和液晶线程循环体。

  作为本发明的一种优选方案,所述创建CAN线程和液晶线程循环体,包括:

  首先,在CPU通信模块内部获取系统时钟、读取规约配置并实现系统初始化;

  其次,创建串口液晶子线程以及CAN口子线程,并设定定时数据;

  最后,根据CAN总线发送数据以及发送次数对规约数据进行打包以及定时监测,在延时系统所设定的时间后进行重复操作。

  作为本发明的一种优选方案,所述液晶子线程由通信子线程在调用打开函数OpenPort对液晶线程设置,并控制接收线程函数连接遥信数据缓存资源。

  作为本发明的一种优选方案,所述遥信数据缓存资源为液晶线程以及CAN线程共享的临时资源,采用互斥锁机制调用Select函数来解决临界资源的同步问题。

  作为本发明的一种优选方案,所述互斥锁机制步骤包括:

  首先,根据某一时刻液晶线程或者CAN线程获取遥信数据缓存资源互斥锁,并设定间隔一定时间后重复获取更新;

  其次,在控制办卡上上报互斥锁状态后,释放遥信数据缓存资源互斥锁并发出释放控制指令,添加读事件到描述符中,并调用Select函数获取所需描述符;

  再者,根据所获取的描述符判断是否退出线程,并清除当前文件描述符,再次判断Select函数返回是否正确以及是否还存在读事件;

  最后,当上述事件全部判断完毕后读取接收缓存区的长度并接收报文数据,并将报文数据传输到串口接收数据处理模块获取互斥锁指令信息。

  作为本发明的一种优选方案,所述串口接收数据处理模块内置有临时指针变量,将临时指针变量指向接收缓存区位置,判断接收到的报文第一字节和第三字节是否为帧起始字符,根据帧字符类型配置相应指令参数。

  作为本发明的一种优选方案,根据所述指令参数以及线程控制协议建立液晶板虚拟按键模块交互连接智能遥信模块,所述智能遥信模块根据遥信变位指令向所述CPU通信模块发送遥信信息,同时接收CPU通信模块的遥控指令。

  作为本发明的一种优选方案,所述智能遥信模块根据CAN通信协议定义遥信与遥控应用数据包,对遥信数据进行采集、处理以及发出遥控指令。

  作为本发明的一种优选方案,所述智能遥信模块通过CAN总线方式与CPU通信模块之间由工作于主从模式的CAN串行通信总线互连。

  本发明具有如下优点:

  本发明实质上是配网自动化主站变电站内开关的遥控方法,采用模块化设计方案,将嵌入式技术、遥信技术,遥控技术结合在一起,在配网侧以及主网侧双边建立校验机制,确保了遥控命令安全可控高效,配网侧控制点直接遥控主网侧开关,实现高效精准作业,极大提高了工作效率;同时,在异步通信和CAN通信的基础上采用多线程编程思想,实现了遥信、遥控、数据存储与上传、系统对时、显示与通信等配电监控功能。

  附图说明

  为了更清楚地说明本发明的实施方式或现有技术中的技术方案,下面将对实施方式或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是示例性的,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图引伸获得其它的实施附图。

  本说明书所绘示的结构、比例、大小等,均仅用以配合说明书所揭示的内容,以供熟悉此技术的人士了解与阅读,并非用以限定本发明可实施的限定条件,故不具技术上的实质意义,任何结构的修饰、比例关系的改变或大小的调整,在不影响本发明所能产生的功效及所能达成的目的下,均应仍落在本发明所揭示的技术内容得能涵盖的范围内。

  图1为本发明实施方式中配网自动化主站变电站内开关的遥控方法的流程图。

  具体实施方式

  以下由特定的具体实施例说明本发明的实施方式,熟悉此技术的人士可由本说明书所揭露的内容轻易地了解本发明的其他优点及功效,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

  如图1所示,本发明提供了一种配网自动化主站变电站内开关的遥控方法,采用模块化设计方案,将嵌入式技术、遥信技术,遥控技术结合在一起,在配网侧以及主网侧双边建立校验机制,确保了遥控命令安全可控高效,配网侧控制点直接遥控主网侧虚拟开关,实现高效精准作业,极大提高了工作效率,同时,在异步串口通信和CAN通信的基础上采用多线程编程思想,实现了遥信、遥控、数据存储与上传、系统对时、显示与通信等配电监控功能。

  包括以下步骤:

  S01、在配电自动化系统内设置液晶板虚拟按键模块,通过接线连接基于Linux系统的多线程CPU通信模块;

  S02、在CPU通信模块内部设置数据缓存区供多个线程共享,引入互斥锁机制确保三个线程同步访问CAN数据缓存区的数据;

  S03、利用线程控制协议校验主线程并对配网内部智能遥控模块的子线程进行调用;

  S04、在液晶板虚拟按键模块与智能遥信模块交互连接后,将数据同步至数据采集与处理单元,利用控制指令校验配网相应阈值。

  本实施例中,在Windows下开发Linux应用程序的Eclipse作为CPU通信模块的软件开发环境,并将编译好的程序下载到CPU板上运行,液晶板虚拟按键模块以及CPU通信模块均采用相同的处理器芯片,主要完成数据的传递、遥控以及通信功能。

  该配网自动化主站变电站内开关的遥控方法包括,采用智能遥控模块与电力监控系统中主网侧的“ems_sca_guard”模块进行系统中遥控预置、遥控执行及遥控撤消,确保配网侧的“dms_sca_guard”模块能够收发遥控命令,当用户点击配网侧的遥控按键后,命令通过配网侧JMS层校验成功后传递到主网侧,主网侧有相应的JMS层进行再次校验,通过后转由“ems_sca_guard”模块进行执行,执行成功后,返回执行成功信号给JMS层,JMS校验后流转到配网侧JMS层,校验成功后发至“dms_sca_guard”模块,“dms_sca_guard”模块接收执行成功信号并在界面显示遥控执行成功。

  CPU通信模块主线程首次运行时需初始化以及配置规约参数,并分别创建CAN线程和液晶线程循环体。

  本实施例中,CPU通信模块计运用面向对象C++编程语言,将要实现的模块封装到对应的类中,然后通过对象去访问相关的成员,这样使程序的结构更加清晰合理。

  本实施例中,CPU通信模块的通信主线程在程序运行时,首先完成一些初始化工作以及规约参数的配置,然后打开CAN口和串口,并分别创建CAN线程和液晶线程,各自的线程创建好之后,各线程就会跳到自己的接收线程完成自己对应的功能,而主线程接着进入主循环体,完成CAN的数据发送,规约组包和定时监测功能。

  创建CAN线程和液晶线程循环体主要流程如下:

  首先、在CPU通信模块内部获取系统时钟、读取规约配置并实现系统初始化;

  其次、创建串口液晶子线程以及CAN口子线程,并设定定时数据;

  最后、根据CAN总线发送数据以及发送次数对规约数据进行打包以及定时监测,在延时系统所设定的时间后进行重复操作。

  液晶子线程由通信子线程在上电后调用打开函数OpenPort对液晶线程设置,并控制接收线程函数连接遥控数据缓存资源。

  遥信数据缓存资源为液晶线程以及CAN线程共享的临时资源,采用互斥锁机制调用Select函数来解决临界资源的同步问题。

  互斥锁机制步骤如下:

  首先、根据某一时刻液晶线程或者CAN线程获取遥信数据缓存资源互斥锁,并设定间隔一定时间后重复获取更新;

  其次、在控制办卡上上报互斥锁状态后,释放遥控数据缓存资源互斥锁并发出释放控制指令,添加读事件到描述符中,并调用Select函数获取所需描述符;

  再者、根据所获取的描述符判断是否退出线程,并清除当前文件描述符,再次判断Select函数返回是否正确以及是否还存在读事件;

  最后、当上述事件全部判断完毕后读取接收缓存区的长度并接收报文数据,并将报文数据传输到串口接收数据处理模块获取互斥锁指令信息。

  该配网自动化主站变电站内开关的遥控方法还包括,在配电网侧液晶接收线程中,遥信信号资源为液晶线程与CAN线程共享的临界资源,当液晶线程访问遥信信号资源时,有可能会与CAN线程发生冲突,本发明采用互斥锁机制来解决临界资源的同步问题,在同一时刻只能是液晶线程或者CAN线程获取遥信信号资源互斥锁,申请到互斥锁的线程能够对临界资源遥信信号资源进行访问并上报遥信信号资源,其他需要获取互斥锁的线程先被挂起,等待上锁线程释放掉信号资源互斥锁为止,这种互斥锁机制保证了CAN线程和液晶线程对临界资源的顺序访问,对于新遥信信号资源的产生在设计中采用信号量机制,因为遥信信号资源的产生有时会很大,但通常情况下遥信又不是时刻发生变位,为了去判断新遥信信号资源的产生,调用遥信板状态获取函数CheckIO,只要有新的遥信信号资源就置遥信事件信号释放遥信信号量,对遥信信号量作加1操作,而在液晶线程中只要去申请遥信信号量,一旦申请到遥信信号量就去发送遥信SOE,这样就实现了遥信有变位发送无变位不发送,很好地完成了遥信的上报任务。

  本实施例中,配网侧遥信信号的获取采用多路I/O功能,调用select()函数,当串口设备准备好,函数才返回,否则处于阻塞状态一直等待函数返回,能够有效的解决串口设备与其他设备的冲突问题,当函数返回时,表明串口对应的设备描述符准备就绪,可以进行串口读写,当有读事件产生时,需判断读取的数据长度,如果大于0,则进行串口接收数据处理,数据在处理过程中判断是否能够申请到遥信信号量,如果能申请到遥信信号量则说明有遥信事件,此时发送遥信信号资源。

  串口接收数据处理模块内置有临时指针变量,将临时指针变量指向接收缓存区位置,判断接收到的报文第一字节和第三字节是否为帧起始字符,根据帧字符类型配置相应指令参数。

  此外,在该配网自动化主站变电站内开关的遥控方法中,采用串口接收数据处理模块通过临时指针变量判断接收报文的起始字符,从而对帧的类型进行判断,如果是召唤帧,则调用数据发送函数data_send(Ucharbsf,Uint16no),对主网侧下发的召唤帧进行应答,如果是数据帧,则表示接收到的报文是参数配置,首先调用参数处理函数data_deal(Ucharbsf,Uchar*p)对接收到的数据进行处理并修改配置参数,然后调用应答函数reply(Ucharbsf,Ucharno)对主网侧进行应答,处理完一个报文后缓冲区读指针要移动一个报文的长度,这样临时指针可以以任意长的字节去读取数据,每次处理完一帧数据时,当再次调用串口接收数据处理函数时临时指针再次移动到lcd_com.rcv_buf+lcd_com.ptr的位置。

  根据指令参数以及线程控制协议建立虚拟液晶板虚拟按键模块交互连接智能遥信模块,智能遥信模块根据遥信变位指令向CPU通信模块发送遥信信息,同时接收CPU通信模块的遥控指令。

  本实施例中,在根据指令参数以及线程控制协议构建液晶板虚拟按键模块连接智能遥信模块时,在主网侧需判断消息是否通过JMS综合校验,如果通过校验通过则进入SCADA校验环节,分别为“校验设备遥信状态”,“设备挂牌属性是否允许遥控”,和“是否通过五防校验”,再将遥控结果返回配网。

  本实施例中,CPU通信模块的通信过程分为发送和接收两个部分,发送报文的优先级可在软件中进行配置,发送中可以记录发送起始帧时刻的时间戳,且CAN报文通过14个位宽可变/可配置的标识符过滤器组的处理,可以保证数据准确无误的接收。

  智能遥信模块根据CAN通信协议定义遥信与遥控应用数据包,对遥信数据进行采集、处理以及发出遥控指令。

  本实施例中,针对遥控指令的处理过程为:首先调用遥信初始化状态读取函数YX_StateInit(U16*state),将遥信状态存入先前的遥信状态IO_Pre,延时一段时间后再次调用该函数,此次将读取到的遥信状态存到当前的遥信状态IO_Current,然后循环判断IO_Pre与IO_Current是否相同,直到两状态相同跳出循环,最后把遥信的状态保存到临时状态中,如果两状态不同,则IO_State的值为1,表示发生了遥信变位,继续循环32点检测具体哪一路遥信发生了变位,并将具体发生遥信变位的信息储存到临时状态中,此时遥信开始变位时间t_delay开始计时,接下来对32点遥信状态循环检测,如果发生变位的遥信状态持续时间大于遥信的防抖时间,则认为是有效遥信变位,将当前态覆盖先前态,并将此时的遥信状态以及时间间隙进行CAN组包,将组好的数据包写入缓存,并根据指令信息判别当前状态。

  智能遥信模块通过CAN总线方式与CPU通信模块之间由工作于主从模式的CAN串行通信总线互连。

  本实施例中,智能遥信模块对于CAN的数据接收采用中断方式,在CAN的接收中断服务程序中首先读取接收邮箱中的数据,然后将接收标志置1,在系统主函数中循环判断接收标志是否为1,当此标志为1时,调用数据处理函数并将接收标志清0,数据处理函数将接收到的数据进行解析,数据的解析主要对遥信遥控相关标志位清0和置位,并进行相关函数的调用,处理后的数据同样也会发送相应的数据包,完成CAN的数据接收与发送。

  本实施例中,智能遥控模块对于采集数据的处理流程为:数据处理,当接收数据包成功时,按照CAN协议定义的帧格式采用switch分支选择将接收到的帧进行处理,依次进行上电对时、遥信配置、状态查询、看门狗置位、发送地址查询、遥控选择、遥控撤销、遥控执行的处理,并且对相关标志位进行清0与置位,这些标志位的判断将会在主程序中循环判断并调用相关的函数。

  进一步地,该配网自动化主站变电站内开关的遥控方法中,在配网以及主站系统在上电后,主程序首先进行初始化,此过程包括硬件的初始化,程序中的指针、变量、标志位的初始化,然后进入主循环中执行需要重复完成的任务,主要包括遥控的超时操作、定时通信、遥信定时发送、发送数据包、遥控选择、遥控执行等操作,但对于特殊任务需要中断服务程序来完成,数据接收主要通过接收中断进行处理,而数据的发送是在数据处理完后将需要发送的数据写入发送缓冲区,然后在主函数中循环调用CAN发送函数对数据进行发送,遥信SOE的处理则在定时中断中进行处理。

  该配网自动化主站变电站内开关的遥控方法,在配网、主网侧双边建立校验机制,确保遥控命令安全可控高效,利用配网侧控制点直接遥控主网侧虚拟开关,实现高效精准作业,极大提高工作效率,采用双边校验,能够高效判断消息传输质量,建立精准的消息进程授权机制,判断消息来源是否为当前系统区域,进行消息接收时间延迟控制。

  虽然,上文中已经用一般性说明及具体实施例对本发明作了详尽的描述,但在本发明基础上,可以对之作一些修改或改进,这对本领域技术人员而言是显而易见的。因此,在不偏离本发明精神的基础上所做的这些修改或改进,均属于本发明要求保护的范围。

《一种配网自动化主站变电站内开关的遥控方法.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式(或pdf格式)