1.一种Modbus ASCII中从站快速捕获数据的方法,其特征在于:包括:从站i侦听主站和被侦听的从站j间含从站j被侦听的功能码的通信报文,所述i、j为正整数;
所述从站i判断所述侦听到的通信报文是否含有需要被捕获的数据;
当判断结果为是时,所述从站i直接从所述侦听到的通信报文中捕获所需数据。
2.如权利要求1所述的方法,其特征在于:所述从站i侦听主站和被侦听的从站j间含从站j被侦听的功能码的通信报文,包括:从站i侦听主站和从站间的通信报文;
从站i判断侦听到的主站和从站间的通信报文中所含从站地址是否与被侦听的从站j的地址相同;
当判断结果为是时,从站i继续判断侦听到的主站和从站间的通信报文所含的功能码是否与从站j被侦听的功能码相同;
当判断结果也为是时,执行所述从站i判断所述侦听到的通信报文是否含有需要被捕获的数据的步骤。
3.如权利要求1或2所述的方法,其特征在于:主站和从站间的通信报文为主站下发给从站的请求或从站返回给主站的响应。
4.如权利要求3所述的方法,其特征在于:所述从站i判断所述侦听到的通信报文是否含有需要被捕获的数据,包括:从站i识别所述侦听到的通信报文中所含功能码的类型;
当识别到的类型为读操作时,判断所述侦听到的通信报文是否为主站下发给从站j的请求,若是,则判断结果为是;
当识别到的类型为写操作时,判断所述侦听到的通信报文是否为从站j返回给主站的响应,若是,则判断结果为是;
当识别到的类型为读/写操作时,判断结果为是。
5.如权利要求4所述的方法,其特征在于:所述侦听到的通信报文中所含功能码包括:属于读操作的读线圈状态、读输入寄存器、读保持寄存器或读离散输入,属于写操作的写单个寄存器、写单个线圈、写多个线圈或写多个寄存器,或者,属于读/写操作的读/写多个寄存器。
6.如权利要求4所述的方法,其特征在于:从站i设置一个初始值为0的侦听计数器,每当从站i侦听到主站和被侦听的从站j间的含从站j被侦听的功能码的通信报文时,对所述侦听计数器加1;当所述侦听计数器的值为1时,从站i认为所述侦听到的通信报文为主站下发给从站j的请求,当所述侦听计数器的值为2时,从站i认为所述侦听到的通信报文为从站j返回给主站的响应;
所述方法还包括:
当所述侦听计数器的值为2时,
若从站i判断到所述侦听到的通信报文不含有需要被捕获的数据时,直接将所述侦听计数器清零;
若从站i判断到所述侦听到的通信报文含有需要被捕获的数据时,则从站i在执行所述直接从所述侦听到的通信报文中捕获所需数据步骤之后,将所述侦听计数器清零。
7.一种Modbus ASCII中的从站,其特征在于:包括:侦听模块,用于侦听主站和被侦听的从站j间的含从站j被侦听的功能码的通信报文,所述j为正整数;
判断模块,判断所述侦听模块侦听到的通信报文是否含有需要被捕获的数据;
捕获模块,用于当判断模块的判断结果为是时,直接从所述侦听到的通信报文中捕获所需数据。
8.如权利要求7所述的从站,其特征在于:所述侦听模块包括:侦听单元,用于侦听主站和从站间的通信报文;
第一判断单元,用于判断所述侦听单元侦听到的主站和从站间的通信报文中所含从站地址是否与被侦听的从站j的地址相同;
第二判断单元,用于当所述第一判断单元的判断结果为是时,判断所述侦听单元侦听到的主站和从站间的通信报文所含的功能码是否与从站j被侦听的功能码相同;
第一指示单元,用于当第二判断单元的判断结果为是时,向所述判断模块输出判断结果为是的指示信号。
9.如权利要求8或9所述的从站,其特征在于:所述主站和从站之间的通信报文为主站下发给从站的请求或从站返回给主站的响应;
所述判断模块,包括:
识别单元,用于识别所述侦听模块侦听到的通信报文中所含功能码的类型;
第三判断单元,用于当识别单元识别到的类型为读操作时,判断所述侦听到的通信报文是否为主站下发给从站j的请求;
第四判断单元,用于当识别单元识别到的类型为写操作时,判断所述侦听到的通信报文是否为从站j返回给主站的响应;
第二指示单元,用于当所述识别单元识别到的类型为读/写操作或第三判断单元的判断结果为是或第四判断单元的判断结果为是时,向所述捕获模块输出判断结果为是的指示信号。
10.如权利要求9所述的从站,其特征在于:还包括:侦听计数器,所述侦听计数器的初始值为0,每当所述侦听模块侦听到主站和被侦听的从站j间的含从站j被侦听的功能码的通信报文时,所述侦听计数器加1;
当所述侦听计数器的值为1时,所述第三判断单元认为所述侦听到的通信报文为主站下发给从站j的请求,当所述侦听计数器的值为2时,所述第四判断单元认为所述侦听到的通信报文为从站j返回给主站的响应;
清零模块,用于当所述侦听计数器的值为2时,
若所述判断模块判断到所述侦听到的通信报文不含有需要被捕获的数据时,直接将所述侦听计数器清零;
若判断模块判断到所述侦听到的通信报文含有需要被捕获的数据时,则在所述捕获模块直接从所述侦听到的通信报文中捕获所需数据之后,将所述侦听计数器清零。