西门子(中国)有限公司(SLC)

注册 登录

  签到   每日登录:+1西币 +1经验值我的支持中心

信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。

技术论坛


编辑推荐: 关闭

请填写推广理由:

【通用排序库】

作者 主题
奇侠

经验值: 7015
发帖数: 3450
精华帖: 26
主题:【通用排序库】
推荐帖


只看楼主 楼主 2012-04-20 11:16:58
前几天有朋友跟我讨论设备等寿命运行的控制方法,翻看自己前面的项目程序时,感觉可以做成一个通用排序库。花了半天时间把子程序规范为通用的排序库。奉献到论坛,希望对各位同仁今后的编程有所帮助。
这个库以VDnn双整数为单位存储设备编号、设备运行数据,也就是说每8个字节为一组,前4个字节存设备编号,后4个字节存运行数据。排序方向可以控制从小往大排还是从大往小排。组数为需排序的设备数。



排序效果




点击此处查看附件

密码:jnyy
(2012-07-11补充)
带特征码的实数排序例子程序(VD5000开始是数据,VD6000开始是特征码)


点击此处查看附件

制冷、热工-许可证试验室承建,给了我深究测量与控制的绝好机会。分享-值得期待!
以下网友喜欢您的帖子:

  
重要声明:

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

帖子链接:http://www.ad.siemens.com.cn/club/bbs/post.aspx?b_id=3&a_id=980404&s_id=1&num=22

至圣

经验值: 32331
发帖数: 9061
精华帖: 71
回复:【通用排序库】


只看楼主 1楼 2012-04-20 20:04:25
设备编号为何要用这么长的数据保存呢?
起始地址通常都是使用V区。可以把这个定义成字型,然后在程序里加上字头16#0800。会不会好点?
 
以下网友喜欢您的帖子:

  
至圣

经验值: 32331
发帖数: 9061
精华帖: 71
回复:【通用排序库】


只看楼主 2楼 2012-04-20 20:12:58
这程序是否使能一个周期就完成任务?介绍多一点啦。
 
以下网友喜欢您的帖子:

  
奇侠

经验值: 6190
发帖数: 2167
精华帖: 0
回复:【通用排序库】


只看楼主 3楼 2012-04-20 21:08:32
请问排序跟设备寿命有什么关系啊?
以上仅供参考,如有差错,敬请原谅!
以下网友喜欢您的帖子:

  
至圣

经验值: 32331
发帖数: 9061
精华帖: 71
回复:【通用排序库】


只看楼主 4楼 2012-04-20 21:41:23
通常都是在说先启动时间短的那个设备。或者让设备的期望寿命适当错开,以便进行大修。
 
以下网友喜欢您的帖子:

  
奇侠

经验值: 6190
发帖数: 2167
精华帖: 0
回复:【通用排序库】


只看楼主 5楼 2012-04-20 22:01:29
原来是这个意思,我做过几次恒压供水,就是用的先启动时间短的那台泵。
以上仅供参考,如有差错,敬请原谅!
以下网友喜欢您的帖子:

  
奇侠

经验值: 7015
发帖数: 3450
精华帖: 26
回复:【通用排序库】


只看楼主 楼主 6楼 2012-04-20 23:29:48
用VD存编号就是算地址方便一点,另外编号内还可以附带是否在用等信息。
使能一个周期即可完成排序,里面用的是冒泡法。
还要说明的是编号会随运行数据同时移动。
排序方向就是为了方便取结果,比如为了停止运行时间长的设备,就用从大到小排序,否则就用从小到大排序。
自己在用的程序中也有VW叠加的方式算地址,但是作为一个通用程序,还是使用规范命令更合适,省反复解释。
制冷、热工-许可证试验室承建,给了我深究测量与控制的绝好机会。分享-值得期待!
以下网友喜欢您的帖子:

  
侠圣

经验值: 2168
发帖数: 756
精华帖: 0
回复:【通用排序库】


只看楼主 7楼 2012-04-27 13:37:00
怎么看不到源程序
有密码吗?
 
以下网友喜欢您的帖子:

  
奇侠

经验值: 7015
发帖数: 3450
精华帖: 26
回复:【通用排序库】


只看楼主 楼主 8楼 2012-04-27 20:10:22
quote:以下是引用like821080在2012-04-27 13:37:00的发言:
怎么看不到源程序
有密码吗?

仔细一点就能看到密码了!O(∩_∩)O哈哈~
制冷、热工-许可证试验室承建,给了我深究测量与控制的绝好机会。分享-值得期待!
以下网友喜欢您的帖子:

  
侠圣

经验值: 2168
发帖数: 756
精华帖: 0
回复:【通用排序库】


只看楼主 10楼 2012-04-28 14:23:30
排序的库密码还是没有找到,望能指点下!!!!!!!!!1
 
以下网友喜欢您的帖子:

  
奇侠

经验值: 7015
发帖数: 3450
精华帖: 26
回复:【通用排序库】


只看楼主 楼主 11楼 2012-04-28 16:02:21
quote:以下是引用like821080在2012-04-28 14:23:30的发言:
排序的库密码还是没有找到,望能指点下!!!!!!!!!1

密码真的有那么重要?想打开修改?还是jnyy仅仅是好奇?
制冷、热工-许可证试验室承建,给了我深究测量与控制的绝好机会。分享-值得期待!
以下网友喜欢您的帖子:

  
侠圣

经验值: 2168
发帖数: 756
精华帖: 0
回复:【通用排序库】


只看楼主 12楼 2012-04-28 19:24:14
谢谢,问题已经解决了!!!!!!!!!!!!!!!!!1
 
以下网友喜欢您的帖子:

  
侠客

经验值: 661
发帖数: 132
精华帖: 0
回复:【通用排序库】


只看楼主 13楼 2012-05-02 21:46:59
不知能不能介绍得详细点,怎么用,呵呵,我想用在抢答器上自动排名不知可否
 
以下网友喜欢您的帖子:

  
奇侠

经验值: 7015
发帖数: 3450
精华帖: 26
回复:【通用排序库】


只看楼主 楼主 14楼 2012-05-02 21:51:52
quote:以下是引用wangyw在2012-05-02 21:46:59的发言:
不知能不能介绍得详细点,怎么用,呵呵,我想用在抢答器上自动排名不知可否

当然可以,把每个按钮上升沿获得一个与起始时间的时间差,将时间差连同按钮标号一同排序,即可得到时间最短的那个优胜者,根据按钮编号,机器可以点亮对应的指示灯或数码管,确认胜出者。
制冷、热工-许可证试验室承建,给了我深究测量与控制的绝好机会。分享-值得期待!
以下网友喜欢您的帖子:

  
游侠

经验值: 523
发帖数: 178
精华帖: 1
回复:【通用排序库】


只看楼主 15楼 2012-05-03 11:27:35
不错 学习前辈们的编程风格 谢谢
严谨探索,追求完美。
以下网友喜欢您的帖子:

  
侠客

经验值: 707
发帖数: 562
精华帖: 0
回复:【通用排序库】


只看楼主 16楼 2012-05-03 16:15:30
密码是多少啊,,,,我比较笨
you must control your mood
以下网友喜欢您的帖子:

  
侠圣

经验值: 3721
发帖数: 899
精华帖: 0
回复:【通用排序库】


只看楼主 17楼 2012-05-04 12:51:11
楼主,你的库文件设置了密码,我看不到子程序,能否将不加密的库文件上传啊,谢谢。
自强不息,厚德载物。
以下网友喜欢您的帖子:

  
侠客

经验值: 661
发帖数: 132
精华帖: 0
回复:【通用排序库】


只看楼主 18楼 2012-05-04 21:46:05
谢谢凌大侠,还想问下,这个功能是依据后4个字节的运行数据的大小来排列的吗
 
以下网友喜欢您的帖子:

  
侠客

经验值: 822
发帖数: 99
精华帖: 0
回复:【通用排序库】


只看楼主 19楼 2012-05-05 11:47:00
凌侠能否提示下你的密码在什么位置,我只想看看编程的原理和使用方式,学习就是一个深入研究的过程吗,我也不想仅仅是简单的应用,原理却一无所知
因为坚持所以成功
以下网友喜欢您的帖子:

  
游侠

经验值: 380
发帖数: 113
精华帖: 0
回复:【通用排序库】


只看楼主 20楼 2012-05-10 11:49:24
最近用到电机群控,谢谢分享!!!!
养成好习惯,习惯决定命运!
以下网友喜欢您的帖子:

  
  • 上一页
  • 1
  • 下一页
扫描打开手机版
您收到0封站内信:
×
×