CN110134526A - 一种工业机器人控制程序防盗方法 - Google Patents

一种工业机器人控制程序防盗方法 Download PDF

Info

Publication number
CN110134526A
CN110134526A CN201910243279.9A CN201910243279A CN110134526A CN 110134526 A CN110134526 A CN 110134526A CN 201910243279 A CN201910243279 A CN 201910243279A CN 110134526 A CN110134526 A CN 110134526A
Authority
CN
China
Prior art keywords
code
timing
program
local controller
main program
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201910243279.9A
Other languages
English (en)
Inventor
周颢
黄庆九
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Taizhou Jiuniu Huilian Robot Technology Co Ltd
Original Assignee
Taizhou Jiuniu Huilian Robot Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Taizhou Jiuniu Huilian Robot Technology Co Ltd filed Critical Taizhou Jiuniu Huilian Robot Technology Co Ltd
Priority to CN201910243279.9A priority Critical patent/CN110134526A/zh
Publication of CN110134526A publication Critical patent/CN110134526A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Computer Hardware Design (AREA)
  • Stored Programmes (AREA)

Abstract

本发明属于物联网技术领域,具体涉及工业自动化控制技术领域,尤其涉及工业机器人的控制技术。本发明提供一种工业机器人控制程序防盗方法,所述控制程序包括主程序、按预设时序调用的时序调用子程序、基于事件触发调用的随机调用子程序。时序调用子程序分为多段代码,主程序每次执行一段代码,下载下一段代码,删除上一段代码。本地控制器不留存主体程序,有效的保证的预防了计算机控制程序盗版的问题。

Description

一种工业机器人控制程序防盗方法
技术领域
本发明属于物联网技术领域,具体涉及工业自动化控制技术领域,尤其涉及工业机器人的控制技术。
背景技术
随着计算机智能控制技术的发展,加之劳动力成本的逐步增高,工业生产加工领域对自动化工业机器人的需求越来越大。
自动化生产线、工业机器人等工业自动化设备,由机械电气装置等硬件和计算机控制程序软件两大部分构成。计算机控制程序是工业自动化工业机器人的灵魂,计算机控制程序优劣在决定工业机器人的效率、节能、可靠性、安全性等方面,具有与机械结构同样的至关重要的作用。计算机控制程序的开发与优化需要投入大量的人力和时间成本。
虽然在著作权法的保护下,可以通过法律维权途径,实现计算机程序的保护,防止和打击盗版。但是总是有不尽如人意的情况出现,给企业带来巨大的经济损失,损害企业推动技术进步的积极性。
为了防止盗版,常规的做法是对计算机程序进行加密处理,但是,一方面加密的计算机程序存在被破解的可能性,另一方面,加密只是阻碍了源代码的还原,然而,如果不需要对控制程序进行修改,可以通过数据拷贝的方式,克隆ROM芯片或者主控芯片,同样可以正常用于自动化设备的控制。
发明内容
一种工业机器人控制程序防盗方法,所述控制程序包括主程序、按预设时序调用的时序调用子程序、基于事件触发调用的随机调用子程序。
所述主程序用于初始化工业机器人使其进入运行准备状态,以及调用子程序以控制相应被控机件完成相应动作;
所述时序调用子程序由主程序按预设时序调用执行,所述随机调用子程序由主程序基于事件的触发调用执行。
其特征在于:
所述控制程序存储于远端控制平台内,所述时序调用子程序的代码按执行的先后顺序,被分为多段代码;
工业机器人的本地控制器配置有用于与远端控制平台建立通信连接的连接请求程序,远端控制平台与本地控制器通过互联网通信。
当需要运行设备时,按如下步骤进行:
S1、本地控制器建立与远端控制平台的时时通信连接;
S2、本地控制器从远端控制平台下载主程序、随机调用子程序、时序调用子程序第一段代码,并暂存在RAM中;
S3、本地控制器运行主程序,当主程序调用某一时序调用子程序并开始执行其第一段代码时,本地控制器开始从远端控制平台下载该时序调用子程序的第二段代码并暂存在RAM中,当第一段代码执行完毕并开始执行第二段代码时,本地控制器开始从远端控制平台下载该时序调用子程序的第三段代码并暂存在RAM中,并同时从RAM中删除该时序调用子程序的第一段代码,当倒数第二段代码执行完毕并开始执行最后一段代码时,本地控制器开始从远端控制平台下载该时序调用子程序的第一段代码并暂存在RAM中,并同时从RAM中删除该时序调用子程序的倒数第二段代码,当最后一段代码执行完华,本地控制器将其从RAM中删除。
所述时序调用子程序的第一段代码中包括有该时序调用子程序的代码总段数,每一段代码中包含有本段代码序号。
主程序中有判定值和执行值,在主程序从远端平台调用到时序调用子程序的第一段代码时,会将第一段代码中所包含的该时序调用子程序的代码总段数赋值给主程序中的判定值,主程序的执行值的初始值为1。
S3-1-1程序执行代码序号为执行值的代码段;
S3-1-2主程序执行代码段的同时,主程序会对判断值与执行值进行大小判断,当执行值不等于判断值时,主程序向远端控制平台发出请求,请求下载代码序号为执行值加1的代码段,本地控制器下载该段代码进入RAM中;
S3-1-3主程序执行代码段的同时,判断执行值是否大于1,执行值不大于1,主程序不执行删除命令;执行值大于1,主程序执行删除命令,删除RAM中代码序号为执行值减1的代码段;
S3-2,主程序执行完动作命令以后,主程序中执行值自动加1;
S3-3,重复执行S3-1-1到S3-2,直到执行值等于判断时;
S3-4,当执行值等于判断值时,主程序执行下载命令,下载代码序号为1的代码段;
S3-5,当机器人执行完动作后,主程序执行删除命令,删除RAM中代码序号为执行值的代码段;
S3-6,删除完成后,执行值恢复为1,主程序一次对时序调用子程序内所有代码段调用完成。
作为操控智能机械人系统的关键程序包括主程序、随机调用子程序、时序调用子程序都存储于远端控制平台,在机械人的工作过程中被临时从远端控制平台调用,提高了这些关键程序的保护强度。尤其是时序调用子程序会随着智能机械人工作流程的进行,随用随删,本地控制器内最多留存两段代码,有效提升了关键程序的安全性。
在防盗系统工作过程中,执行本段代码、下载下段代码、删除上段代码同时进行,当智能机械人执行一段代码完成后,下段代码已经存在于本地控制器的RAM中,这保证了智能机械人不会因为防盗方法的所实施的分段下载分段执行的流程而中断工作,不需要等待下一段代码。该方法在保护代码安全的同时保证了智能机械人工作的时效性。
另一种工业机器人控制程序防盗方法,所述控制程序包括主程序、按预设时序调用的时序调用子程序、基于事件触发调用的随机调用子程序。
所述主程序用于与远端控制平台建立通讯连接、初始化工业机器人使其进入运行准备状态、调用子程序以控制相应被控机件完成相应动作;
所述时序调用子程序由主程序按预设时序调用执行,所述随机调用子程序由主程序基于事件的触发调用执行。
其特征在于:
所述主程序配置于本地控制器内,所述按预设时序调用的时序调用子程序以及基于事件触发调用的随机调用子程序存储于远端控制平台内;
所述时序调用子程序的代码按执行的先后顺序,被分为多段代码。
当需要运行设备时,按如下步骤进行:
S1、本地控制器建立与远端控制平台的时时通信连接;
S2、本地控制器从远端控制平台下载主程序、随机调用子程序、时序调用子程序第一段代码,并暂存在RAM中;
S3、本地控制器运行主程序,当主程序调用某一时序调用子程序并开始执行其第一段代码时,本地控制器开始从远端控制平台下载该时序调用子程序的第二段代码并暂存在RAM中,当第一段代码执行完毕并开始执行第二段代码时,本地控制器开始从远端控制平台下载该时序调用子程序的第三段代码并暂存在RAM中,并同时从RAM中删除该时序调用子程序的第一段代码,当倒数第二段代码执行完毕并开始执行最后一段代码时,本地控制器开始从远端控制平台下载该时序调用子程序的第一段代码并暂存在RAM中,并同时从RAM中删除该时序调用子程序的倒数第二段代码,当最后一段代码执行完华,本地控制器将其从RAM中删除。主程序配置于本地控制器使工业机器人开始工作前不需要从远端控制器下载主程序,会减少工业机器人的工作前准备时间。时序调用子程序分段下载调用,同样能起到对整个控制程序的防盗版作用。
作为优选,随机调用子程序写有工业机器人紧急制动程序,在工业机器人上装有传感器,当有人或障碍物靠近工业机器人工作区域时,传感器发送信号,本地控制器接收信号后,由本地控制器中主程序调用随机调用子程序,机器人紧急制动,防止可能发生的碰撞。
作为优选,所述感应器可以是超声波探测器。
附图说明
图1防盗程序运行原理示意图。
具体实施方式
为使本发明实现的技术手段与实用功效易于明白了解,下面以工业应用中机械臂进行简单的装配工作为例进行阐述。
所述机械臂在进行装配过程中,需要进行抓取,移动,安装,复位四个动作命令。
应用本发技术方案的机械臂自动控制系统,包括远端控制平台,和本地控制器,本地控制器与远端控制平台通过互联网络通信。
本地控制器配置有身份编号信息存储器、地理位置信息采集器以及启动程序,所述启动程序建立与远端控制平台的连接,接收远端控平台,
控制程序配置于远端控制平台,所述控制程序包括主程序、需要按预设时序执行的时序调用子程序、用于响应传感器信号的随机调用子程序。
所述时序调用子程序包括四个代码段,四个代码段分别控制机械臂抓取、移动、安装、复位四个动作命令。
所述时序调用子程序包括四个代码段,
代码序号为1的代码段控制机械臂抓取动作命令;
代码序号为2的代码段控制机械臂移动动作命令;
代码序号为3的代码段控制机械臂安装动作命令;
代码序号为4的代码段控制机械臂复位动作命令。
当自动控制系统开始工作时,本地控制器要先与远端控制平台建立连接,本地控制器从远端控制平台下载主程序、随机调用子程序、时序调用子程序第一段代码,并暂存在RAM中;
主程序开始执行,调整机械臂进入初始姿态,机械臂正式准备进入工作流程。
参见图1,主程序向远端控制平台请求下载时序子程序中代码序号为1的代码段,序号为1的代码段中包含有整个时序调用子程序的数目值,下载入本地控制器RAM中后,主程序将该数目值赋予主程序中的判断值。
主程序运行RAM中的代码序号为1的代码段,机械臂执行抓取动作;在机械臂执行抓取动作的同时,主程序对程序中的判断值与执行值进行大小判断,此时执行值为1,判断值为4,执行值不等于判断值,主程序向远端控制平台发送请求,请求下载代码序号为1+1的代码段,本地控制器下载序号为2的代码段进入本地控制器Ram中;同时判断执行值是否大于1,此时执行值为1,执行值不大于1,主程序不执行删除命令;
当主程序执行完抓取动作以后,主程序中执行值自动加1,此时主程序中执行值为2,然后主程序运行RAM中代码序号为2的代码段,机械臂执行移动命令;当机械臂执行移动动作的同时,主程序对程序中的判断值与执行值进行大小判断,此时执行值为2,判断值为4,执行值不等于判断值,主程序向远端控制平台发送请求,请求下载代码序号为2+1的代码段,本地控制器下载序号为3的代码段进入本地控制器Ram中;同时判断执行值是否大于1,此时执行值为2,执行值大于1,主程序执行删除命令,删除RAM中代码序号为2-1的代码段;
当主程序执行完移动动作以后,主程序中执行值自动加1,此时主程序中执行值为3,然后主程序运行RAM中代码序号为3的代码段,机械臂执行安装动作;当机械臂执行完安装动作的同时,主程序对程序中的判断值与执行值进行大小判断,此时执行值为3,判断值为4,执行值不等于判断值,主程序向远端控制平台发送请求,请求下载代码序号为3+1的代码段,本地控制器下载序号为4的代码段进入本地控制器Ram中;同时判断执行值是否大于1,此时执行值为3,执行值大于1,主程序执行删除命令,删除RAM中代码序号为3-1的代码段;
当主程序执行完安装动作以后,主程序中执行值自动加1,此时主程序中执行值为4,然后主程序运行RAM中代码序号为4的代码段,机械臂执行复位命令;在机械臂执行复位命令的同时,主程序对程序中的判断值与执行值进行大小判断,此时执行值为4,判断值为4,判断值等于执行值,主程序执行下载命令,下载代码序号为1的代码段;
当主程序执行完复位命令以后,主程序执行删除命令,删除代码序号为执行值的代码段,即删除序号4代码段,然后执行值恢复为1;至此主程序完成对整个时序调用子程序的各段代码段的调用。

Claims (6)

1.一种工业机器人控制程序防盗方法,所述控制程序包括主程序、按预设时序调用的时序调用子程序、基于事件触发调用的随机调用子程序;
所述主程序用于初始化工业机器人使其进入运行准备状态,以及调用子程序以控制相应被控机件完成相应动作;
所述时序调用子程序由主程序按预设时序调用执行,所述随机调用子程序由主程序基于事件的触发调用执行;
其特征在于:
所述控制程序存储于远端控制平台内,所述时序调用子程序的代码按执行的先后顺序,被分为多段代码;
远端控制平台与本地控制器通过互联网通信;
当需要运行设备时,按如下步骤进行:
S1、本地控制器建立与远端控制平台的时时通信连接;
S2、本地控制器从远端控制平台下载主程序、随机调用子程序、时序调用子程序第一段代码,并暂存在RAM中;
S3、本地控制器运行主程序,当主程序调用某一时序调用子程序并开始执行其第一段代码时,本地控制器开始从远端控制平台下载该时序调用子程序的第二段代码并暂存在RAM中,当第一段代码执行完毕并开始执行第二段代码时,本地控制器开始从远端控制平台下载该时序调用子程序的第三段代码并暂存在RAM中,并同时从RAM中删除该时序调用子程序的第一段代码,当倒数第二段代码执行完毕并开始执行最后一段代码时,本地控制器开始从远端控制平台下载该时序调用子程序的第一段代码并暂存在RAM中,并同时从RAM中删除该时序调用子程序的倒数第二段代码,当最后一段代码执行完华,本地控制器将其从RAM中删除。
2.依据权利要求1所述工业机器人控制程序防盗方法,所述随机调用子程序写有工业机器人紧急制动程序。
3.依据权利要求1所述工业机器人控制程序防盗方法,工业机器人上装有感应器,所述感应器为超声波探测器。
4.另一种工业机器人控制程序防盗方法,所述控制程序包括主程序、按预设时序调用的时序调用子程序、基于事件触发调用的随机调用子程序;
所述主程序用于与远端控制平台建立通讯连接、初始化工业机器人使其进入运行准备状态、调用子程序以控制相应被控机件完成相应动作;
所述时序调用子程序由主程序按预设时序调用执行,所述随机调用子程序由主程序基于事件的触发调用执行;
其特征在于:
所述主程序配置于本地控制器内,所述按预设时序调用的时序调用子程序以及基于事件触发调用的随机调用子程序存储于远端控制平台内;
所述时序调用子程序的代码按执行的先后顺序,被分为多段代码;
远端控制平台与本地控制器通过互联网通信;
当需要运行设备时,按如下步骤进行:
S1、本地控制器建立与远端控制平台的时时通信连接;
S2、本地控制器从远端控制平台下载主程序、随机调用子程序、时序调用子程序第一段代码,并暂存在RAM中;
S3、本地控制器运行主程序,当主程序调用某一时序调用子程序并开始执行其第一段代码时,本地控制器开始从远端控制平台下载该时序调用子程序的第二段代码并暂存在RAM中,当第一段代码执行完毕并开始执行第二段代码时,本地控制器开始从远端控制平台下载该时序调用子程序的第三段代码并暂存在RAM中,并同时从RAM中删除该时序调用子程序的第一段代码,当倒数第二段代码执行完毕并开始执行最后一段代码时,本地控制器开始从远端控制平台下载该时序调用子程序的第一段代码并暂存在RAM中,并同时从RAM中删除该时序调用子程序的倒数第二段代码,当最后一段代码执行完华,本地控制器将其从RAM中删除。
5.依据权利要求4所述工业机器人控制程序防盗方法,所述随机调用子程序写有工业机器人紧急制动程序。
6.依据权利要求4所述工业机器人控制程序防盗方法,工业机器人上装有感应器,所述感应器为超声波探测器。
CN201910243279.9A 2019-03-28 2019-03-28 一种工业机器人控制程序防盗方法 Pending CN110134526A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910243279.9A CN110134526A (zh) 2019-03-28 2019-03-28 一种工业机器人控制程序防盗方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910243279.9A CN110134526A (zh) 2019-03-28 2019-03-28 一种工业机器人控制程序防盗方法

Publications (1)

Publication Number Publication Date
CN110134526A true CN110134526A (zh) 2019-08-16

Family

ID=67568694

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910243279.9A Pending CN110134526A (zh) 2019-03-28 2019-03-28 一种工业机器人控制程序防盗方法

Country Status (1)

Country Link
CN (1) CN110134526A (zh)

Similar Documents

Publication Publication Date Title
CN109968359A (zh) 一种工业机器人控制系统
CN104268471B (zh) 一种检测面向返程的编程攻击的方法及装置
CN102214281A (zh) 一种软件保护方法和装置
EP1209563A3 (en) Method and system for allowing code to be securely initialized in a computer
CN107229862B (zh) 基于模拟栈和线程注入的一种rop攻击栈溢出防护方法
CN102147845A (zh) 进程监控方法
CN104217163B (zh) 一种检测结构化异常处理攻击的方法及装置
US20190281062A1 (en) Security bypass environment for circumventing a security application in a computing environment
CN1624617A (zh) 阻断对游戏进程非法访问以及操作游戏进程的方法
WO2007040228B1 (ja) 情報処理装置、情報処理方法およびプログラム
CN108363880A (zh) 一种应用于建筑施工、运营、维护综合管理的d-bim方法
CN102831356A (zh) 基于软件指纹的软件动态可信认证方法
CN110134526A (zh) 一种工业机器人控制程序防盗方法
CN102208004A (zh) 一种基于最小化特权原则的软件行为控制方法
CN104268470A (zh) 安全控制方法和安全控制装置
CN102855435A (zh) 一种文件解锁、粉碎的方法及装置
AU768758B2 (en) Method and system for intercepting an application program interface
CN102819717A (zh) 一种文件保护处理的方法和装置
CN105631344B (zh) 安全数据的访问控制方法及系统、终端
Abbadini et al. POSTER: Leveraging eBPF to enhance sandboxing of WebAssembly runtimes
CN110442466A (zh) 防止请求重复访问方法、装置、计算机设备及存储介质
CN104050418B (zh) 一种网页浏览器文本背景安全打印的方法和装置
CN105740692B (zh) 一种解锁方法及终端
CN113282923B (zh) 一种远程控制方法、计算设备及存储介质
CN109033821A (zh) 一种栈溢出攻击防护系统及方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
CB03 Change of inventor or designer information

Inventor after: Zhou Hao

Inventor before: Zhou Hao

Inventor before: Huang Qingjiu

CB03 Change of inventor or designer information
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination