请教一个关于软件通用化的问题
卡(pci2300)或者ni的采集卡(M PCI 6221),现在的问题是:在实际测试的
时候不知道将会使用那几个通道采集那几个参数,这样的话就需要先进行配置
,然后再进行多路采集,然后需要判断那一路是否接传感器,然后要把信号输
入到设定好的graph或者chart里面,为了降低难度,已经假定信号和通道对应
好了,但是不确定是否采集该信号,如何在采集之前判断,然后实现?
btw:这两块卡都是一个AD,多通道循环采样,我一般是把采集出来的多通道
数据先分离成不同数组,然后连到传感器对应的信号显示图中
好复杂,先把要实现的功能breakdown成多个基本的功能吧。
问题完全没描述清晰
重新描述一下吧
没学过软件工程或者项目管理?
要知道是否接了传感器,最稳定的办法需要硬件发出通知或者识别码。
其他办法,诸如看信号RMS之类是非常容易出问题的。
你说道是否进行采集,完全不明白你要说什么?
是说判断传感器是否接通,接通即进行采集呢?
还是说要判断其他条件,才进行采集?
通用化是需要硬件设计支持的,如果硬件没有通知功能,就必须手动配置
不论是哪种情况,设计一个配置界面,保存不同配置参数都是很有用的。
打个比方,要用PNP功能,也得硬件支持吧?硬件没存产品参数,你怎么PNP呢?
我觉得没必要搞那么复杂,手动选一下哪几个通道不就好了么
这么一点点小功能,没有也不损失什么效率,加上反而有可能会造成程序质量的下降,
得不偿失
写程序的第一条:简单、可靠
至于锦上添花的东西,看选择了
如果不给钱,就手动选
给钱的话就费点劲判断一下
zt bg!
怎么判断,我也遇到这个问题,需要判断硬件是否连上
仪器都会有那么一两个连通测试的命令的,最通用的莫过于*IDN?了
哦,我的是两块NI的卡
跟好办了,调用初始化函数的时候,有没error就是连上了呗
呵呵,这样是可以解决,是否还有更好的方法呢?
熊猫会说:自己找
你觉得啥方法会更好?
果然
赶紧bg!
我不懂啊,对lv了解的还是很肤浅啊
比如说驱动开发,现在一片迷茫
lv可以直接开发USB设备驱动么?
还是调用DLL驱动
其实跟lv没啥关系,有段时间研究过PCI,为了初始化设备,就需要搜索一下设备,所以
调用初始化函数已经是很接近源头的方法了
lv可以弄USB,研究VISA去吧,哈哈
不过,买USB的卡都带驱动的吧,怎么还要自己折腾?
我自己做了个usb借口
要自己写驱动程序
强人,拜一拜先
心里发虚
嗯那,是没有描述清楚问题,不好意思,我是在软件界面上用手动设定来配置
,每个通道对应一个采集选通按钮,所以设置完了是知道要采集那些通道的
再描述一下问题,比如说有5个信号对应12345,对应的5个显示chart是abcde
,在设置完选134之后,采集的数据根据循环采样就是134134134。。。需要把
它自动的分开并分别送到acd的chart里面,然后下一次有可能只采集25,那么
同理信号就是2525252525。。。也要自动的分开并分别送到be的chart里面,
这样的话该如何判断呢
art的卡出来的多通道信号是这样格式的,要用decimate 1D array,ni的卡出
来的数据是一个通道一个数组,用的是array subset分离
主要这个东西是给别人做的,如果是我自己用,就直接通道确定之后改变一下分离后的数据和chart的连线就行了,但是既然面对了这个问题,还是很想解决的
其实还是没怎么看明白。。。。
从我的理解来看,你就是需要根据不同的卡来进行不同的分离操作吧,加个选卡的选项
不就好了么,或者初始化的时候判断一下装了哪块卡,然后加个开关就好了。
实在不明白为啥你描述出来的东西这么复杂。。。。
没有阿,其实是与卡无关的,只是不同的卡出来的多通道数据格式是不同的阿
加个选项不就好了么?
选项?能具体点吗...不懂阿..
知道case structure不,手动选一下用的是哪块卡,分离数据的时候用case选择一下用
的方法就好了啊
一句话,就是越长的解释越看不懂
光看那些字就晕了
你是zt,hiahia