L lovewjm Unregistered / Unconfirmed GUEST, unregistred user! 2006-05-18 #1 公司有一地磅,用串口连接到电脑,我编程在读取数据时,数据一般会不断变化,直到数据稳定为止,然后点一下按钮,就将称重保存到数据库里面了,现在不想再点一下按钮,想直接串口数据稳定不动以后,就可以保存,该怎么写这个事件啊,请高手指教!!!!
公司有一地磅,用串口连接到电脑,我编程在读取数据时,数据一般会不断变化,直到数据稳定为止,然后点一下按钮,就将称重保存到数据库里面了,现在不想再点一下按钮,想直接串口数据稳定不动以后,就可以保存,该怎么写这个事件啊,请高手指教!!!!
风 风卷残月 Unregistered / Unconfirmed GUEST, unregistred user! 2006-05-18 #2 试一下判断时间啊, 特定时间定读一次数据,如果都一样就代表数据稳定了, 一个思路吧
J jlg3371 Unregistered / Unconfirmed GUEST, unregistred user! 2006-05-18 #3 同意楼上的说法,你只要在同一时间段内读到的数据如果是不变化的,那么就表示已经稳定了,你就可以读入到数据库中去了.[]
L lovewjm Unregistered / Unconfirmed GUEST, unregistred user! 2006-05-19 #4 多谢回复,我原想也差不多,但怎样设置时间呢?能不能详细指点一下?
W wuchunhua Unregistered / Unconfirmed GUEST, unregistred user! 2006-05-19 #5 比如把一分中得到的所有数据都保存在内存中,把出现次数最多的拿来保存到数据库中不就OK了
风 风卷残月 Unregistered / Unconfirmed GUEST, unregistred user! 2006-05-19 #6 在串中编程中一般都会另建一个线程来读取串口中的数据, 比如你要判断一分钟内的数据不同就稳定了, 那就在程序开始时申请一个包含60个元素的的数组(一分钟一个值) 线程中保存完数据以后就 Sleep(1000) 延时1秒,60次以后就判断是否相等,相等就保存数据就行了
在串中编程中一般都会另建一个线程来读取串口中的数据, 比如你要判断一分钟内的数据不同就稳定了, 那就在程序开始时申请一个包含60个元素的的数组(一分钟一个值) 线程中保存完数据以后就 Sleep(1000) 延时1秒,60次以后就判断是否相等,相等就保存数据就行了
J jamcky Unregistered / Unconfirmed GUEST, unregistred user! 2006-05-20 #7 只要有规律可循的话就可以通过程序解决,你现在的问题是数据刚刚开始时数据变化比较大,过一段时间后,数据就会趋向稳定,那么就可以这样解决:实时读取数据,分析数据变化,开始时数值变化非常大,比如误差有几百公斤,过一段时间稳定后,那么前后10个点或者更多的误差变化只有几公斤,那么这样是不是已经准确呢?这就需要你所用的设备的误差,一般比误差稍大一点就可以了。
只要有规律可循的话就可以通过程序解决,你现在的问题是数据刚刚开始时数据变化比较大,过一段时间后,数据就会趋向稳定,那么就可以这样解决:实时读取数据,分析数据变化,开始时数值变化非常大,比如误差有几百公斤,过一段时间稳定后,那么前后10个点或者更多的误差变化只有几公斤,那么这样是不是已经准确呢?这就需要你所用的设备的误差,一般比误差稍大一点就可以了。