首页 上一页 1 2 3 4 下一页 尾页

用VC写自已的组态软件 点击:13883 | 回复:77



deng_lp

    
  • 精华:5帖
  • 求助:0帖
  • 帖子:65帖 | 2669回
  • 年度积分:0
  • 历史总积分:2876
  • 注册:2001年6月19日
发表于:2005-11-28 17:43:00
楼主
组态软件 是一个庞大的工程,需要有多人的协同作战才能完成。
面对国外的intouch ,ifix ,citect 等多个软件成功经验,
不甘心处于应用级别的我们是不是应该作些什么?
欢迎大家一起交流。
QQ:10723472



controller

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 185回
  • 年度积分:0
  • 历史总积分:237
  • 注册:2005年1月24日
发表于:2005-11-29 11:03:00
1楼
还需要高超的软件开发管理技术和足够的资金.
只有人是不够的.

山水

  • 精华:4帖
  • 求助:0帖
  • 帖子:128帖 | 2238回
  • 年度积分:0
  • 历史总积分:3675
  • 注册:2004年1月06日
发表于:2005-11-29 11:14:00
2楼
应该

ymtq

  • 精华:1帖
  • 求助:0帖
  • 帖子:8帖 | 425回
  • 年度积分:0
  • 历史总积分:874
  • 注册:2005年7月17日
发表于:2005-11-29 11:21:00
3楼
大力支持!!!

autoyx.com

  • 精华:0帖
  • 求助:0帖
  • 帖子:32帖 | 634回
  • 年度积分:0
  • 历史总积分:882
  • 注册:2005年9月27日
发表于:2005-12-02 16:23:00
4楼
我们在这方面做了近10年的研究,最近推出一套 管控一体化的控制软件:EasyMC 3.2软件 有兴趣的可访问下面网站: http://www.autoyx.com/ 提供从硬件到控制策略组态的整体解决方案,免费为用户做配置和报价。

Tonny Yu

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 10回
  • 年度积分:0
  • 历史总积分:12
  • 注册:2005年10月05日
发表于:2005-12-03 20:45:00
5楼
的确要努力!

Tonny Yu

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 10回
  • 年度积分:0
  • 历史总积分:12
  • 注册:2005年10月05日
发表于:2005-12-03 20:46:00
6楼

dantian

  • 精华:0帖
  • 求助:0帖
  • 帖子:3帖 | 75回
  • 年度积分:0
  • 历史总积分:104
  • 注册:2005年10月11日
发表于:2005-12-29 11:30:00
7楼
很赞同作者的看法。
我们应该开放一点。不要保守。
交流进步啊。

小陶

  • 精华:0帖
  • 求助:1帖
  • 帖子:20帖 | 402回
  • 年度积分:1
  • 历史总积分:952
  • 注册:2002年10月31日
发表于:2005-12-30 08:26:00
8楼
我正在做,现在除了图形制作方面正在设计之外
其余都设计完成。有谁有矢量做图方面的程序,
我们可以联合以提高中国工控及信息技术水平呀!

小陶

  • 精华:0帖
  • 求助:1帖
  • 帖子:20帖 | 402回
  • 年度积分:1
  • 历史总积分:952
  • 注册:2002年10月31日
发表于:2005-12-30 10:31:00
9楼
我已经写好了驱动,实时数据库,历史趋势和报表等
就还有图形方面还没有做出来,谁有的话,我们可以
合作,一起为中国工控事业大厦添砖加瓦。
联系方式:sanyuanw@public3.bta.net.cn

qinghulove

  • 精华:0帖
  • 求助:0帖
  • 帖子:6帖 | 16回
  • 年度积分:0
  • 历史总积分:62
  • 注册:2006年1月10日
发表于:2006-01-10 13:10:00
10楼
我也很想用VC来编一个实时监控软件,不过我基础不是很好,想请问一下需要哪些方面的知识?系统一点的!谢谢

疯狂世界

  • 精华:0帖
  • 求助:0帖
  • 帖子:6帖 | 26回
  • 年度积分:0
  • 历史总积分:42
  • 注册:2006年1月11日
发表于:2006-01-11 13:08:00
11楼
小的近日做了一个组态软件UPCAS-通用过程控制自动化系统,用于实现监控(四遥)、生成报表,制作流程图等,

这个系统最大的亮点是突出的灵活性,由于采用了Python脚本,所以小的大言不惭的认为别的组态软件能做的,UPCAS都能更灵活的完成。现在小的正想用她来做一个两人对战的围棋游戏,:)

现在已经完成的功能:监控画面、报表、曲线图等

系统使用VC6开发。运行于Win2000,WinXP

用户名称:haha
无密码

下载地址:http://free5.ys168.com/?iamwilliam
欢迎大家拍砖

controller

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 185回
  • 年度积分:0
  • 历史总积分:237
  • 注册:2005年1月24日
发表于:2006-01-12 13:25:00
12楼
厉害, 看到你们,我看到了希望

gongkongedit

  • 精华:1099帖
  • 求助:0帖
  • 帖子:14392帖 | 54470回
  • 年度积分:0
  • 历史总积分:622
  • 注册:2008年9月08日
发表于:2006-01-12 17:44:00
13楼
是啊,希望ING

alou

  • 精华:0帖
  • 求助:0帖
  • 帖子:2帖 | 107回
  • 年度积分:0
  • 历史总积分:410
  • 注册:2004年2月07日
发表于:2006-01-15 20:16:00
14楼
我也在搞组态编程,主要是设备驱动方面的。对vc比较熟悉。可以交流一下

国家工业化

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 93回
  • 年度积分:0
  • 历史总积分:18
  • 注册:2005年4月08日
发表于:2006-01-18 15:34:00
15楼
xinyong
你好。我想学习一下,怎么找不到你编的程序呀。要是方便,能够给我发一份原代码。谢谢!

疯狂世界

  • 精华:0帖
  • 求助:0帖
  • 帖子:6帖 | 26回
  • 年度积分:0
  • 历史总积分:42
  • 注册:2006年1月11日
发表于:2006-01-19 16:07:00
16楼
to 国家工业化: 

下载UPCAS请到:http://free5.ys168.com/?iamwilliam

关于源代码,我们只能说声抱歉

奔跑

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 18回
  • 年度积分:0
  • 历史总积分:55
  • 注册:2006年1月23日
发表于:2006-01-20 16:34:00
17楼
我在VC++里面用MicroComputing的控件做过试验,我觉得组态主要的工作量是界面的开发,工作量很大。还有就是通讯速度,我觉得这个很关键,直接影响使用效果。有兴趣的朋友们可以一起交流一下。“:)

jncm

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 1回
  • 年度积分:0
  • 历史总积分:1
  • 注册:2006年1月25日
发表于:2006-01-25 17:49:00
18楼
强,有必要来点开放代码的,那样才显得出技术!

疯狂世界

  • 精华:0帖
  • 求助:0帖
  • 帖子:6帖 | 26回
  • 年度积分:0
  • 历史总积分:42
  • 注册:2006年1月11日
发表于:2006-02-09 15:17:00
19楼
贴一个Modbus协议的规约驱动程序供大家讨论,其实这些东西在upcas中是完全开放的。

#main.py
#This is a test Device Driver Script

import user

DICount = 16
AICount = 8
SleepTime = 200

def ProcInit(slave):
    user.SetSlaveDICount(slave, DICount)
    user.SetSlaveAICount(slave, AICount)
        
    return

def ProcA(slave):
    SlaveAddr = 0
    SettingList = user.GetSlaveSetting(slave)
    if (len(SettingList) >= 2):
        SlaveAddr = int(SettingList[1])
        
    msg = ""
    
    msg += user.Int2Char(SlaveAddr)
    msg += user.Int2Char(0x02)
    msg += user.Int2Char(0x00)
    msg += user.Int2Char(0x00)
    msg += user.Int2Char(DICount / 256)
    msg += user.Int2Char(DICount % 256)
    msg += user.MB_Crc(msg)
    
    user.SlaveSend(slave, msg)
    user.Sleep(SleepTime)
    
    msg = user.SlaveReceive(slave)
    nLen = len(msg)
    
    if (nLen >= 5 and msg[nLen - 2 :] == user.MB_Crc(msg[0: nLen - 2])):
        i = 0
        while (i < DICount):
            charValue = user.Char2Int(msg[3 + i / 8])
            user.SetSlaveDI(slave, i, user.GetBit(charValue, i % 8))
            i = i + 1
        
    ProcC(slave)
    return

def ProcB(slave):
    SlaveAddr = 0
    SettingList = user.GetSlaveSetting(slave)
    if (len(SettingList) >= 2):
        SlaveAddr = int(SettingList[1])
        
    msg = ""
    
    msg += user.Int2Char(SlaveAddr)
    msg += user.Int2Char(0x03)
    msg += user.Int2Char(0x00)
    msg += user.Int2Char(0x00)
    msg += user.Int2Char(AICount / 256)
    msg += user.Int2Char(AICount % 256)
    msg += user.MB_Crc(msg)
    
    user.SlaveSend(slave, msg)
    user.Sleep(SleepTime)
    
    msg = user.SlaveReceive(slave)
    nLen = len(msg)
    
    if (nLen >= 5 and msg[nLen - 2 :] == user.MB_Crc(msg[0: nLen - 2])):
        i = 0
        while (i < AICount):
            Value = user.Char2Int(msg[3 + 2 * i]) * 256 + user.Char2Int(msg[4 + 2 * i])
            user.SetSlaveAI(slave, i, Value)
            i = i + 1
        
    
    return

def ProcC(slave):
    command = user.GetSlaveCommand(slave)
    if (len(command) < 3):
        return
        
    UserID = command[0]
    index = int(command[1])
    value = int(command[2])
    
    SlaveAddr = 0
    SettingList = user.GetSlaveSetting(slave)
    if (len(SettingList) >= 2):
        SlaveAddr = int(SettingList[1])
        
    msg = ""
    
    msg += user.Int2Char(SlaveAddr)
    msg += user.Int2Char(0x05)
    msg += user.Int2Char(index / 256)
    msg += user.Int2Char(index % 256)
    if (value):
        msg += user.Int2Char(0xff)
    else:
        msg += user.Int2Char(0x00)
    msg += user.Int2Char(0x00)
    msg += user.MB_Crc(msg)
    
    user.SlaveSend(slave, msg)
    user.Sleep(SleepTime)
    
    msg = user.SlaveReceive(slave)
    nLen = len(msg)
    return

def ProcD(slave):
    return
    
def ProcFinalize(slave):
    return

蒋勇

  • 精华:0帖
  • 求助:0帖
  • 帖子:17帖 | 62回
  • 年度积分:0
  • 历史总积分:311
  • 注册:2006年2月08日
发表于:2006-02-10 11:29:00
20楼
我也作了一个工控组态软件,请多提意见,互相交流
32点免费下载地址:[b]http://www.kipway.com[/b]

 [b]EcHmi[/b](Easy Control Human-Machine Interaction )是一个通用的工控软件人机介面组态软件。作者十多年从事工控行业软件的开发,深知工控组态软件的可靠性、易用性、灵活性的重要性。随着应用需求和技术的发展,一个典型的工控软件包括RTDB、HDB、HMI、REPORT、WEB五大部分,我们不可能将每一部分都做到国外产品如iFix的水平,为何不选取其中一部分作为重点把它做好呢?EcHmi从HMI入手,从2001年的1.0版开始,到目前的8.1版,历经5年时间,通过不断的应用、改进,相信能给您带来惊喜。
 
   [b]高效的C脚本[/b]

    EcHmi的脚本采用CScript,脚本历经两次升级,目前的脚本系统采用虚拟机方式,由编译器编译成字节码,由虚拟机直接执行字节码,效率很高。虚拟机的功能十分强大,支持指针、数组、递归函数调用。
    脚本分为图形脚本、窗口脚本、控制过程脚本。
    内置函数包含数据访问类、图形控制类、画面(窗口)控制类、ActiveX访问类和标准ANSIC的一些函数(比如字符串处理、数学计算等),而且方便扩充内置函数,扩充内置函数时不需要修改编译系统。只需在虚拟机里定义扩充函数的实现即可。
 
 [b]ActiveX支持[/b]

    EcHmi的每一个画面都是ActiveX容器,因此您可以插入ActiveX控件,并可用脚本来访问ActiveX的属性和方法,以达到EcHmi和ActiveX交换数据的目的。
 
[b]OPC数据接口[/b]

    OPC技术基于COM/DCOM技术的国际通用的工业控制过程数据交换规范。EcHmi中内置了OPC 2.0Client。OPC也是目前EcHmi唯一的驱动接口,当然你也可以很方便的定义和实现您自己的驱动接口,挂接不支持OPC的设备。 
 
[b]简单易用的动画向导[/b]

    使用向导来产生动画脚本,[b]您只需要点几下鼠标就行了[/b]。
    系统提供了数值显示、百分比填充、移动、缩放、旋转、仪表指针、边线/文本颜色、实体填充颜色、显示/隐藏、条件闪烁等动画向导,由向导直接生成可见可控的脚本。因此无需手工编写脚本就能产生丰富多彩、表达直观的动态界面。当然对于懂C语言的工程组态工程师来讲,也可以直接手工编写脚本。
 
[b]功能强大易用的界面制作系统[/b]

    采用GDIPLUS和GDI混合编程,采用世界坐标映射,方便对图形的编辑调整。可对任何类型的图形(包括图片)进行任意角度的旋转、整体调控。并提供了图型之间的对齐、等分排列功能。
 
[b]系统资源占用低、稳定可靠[/b]

    EcHmi采用VC++编写,同时采用高效的图形显示技术和高性能的CScript脚本系统,中等规模的工程(<1000点)的CPU占用率在一般的P4 2.0G CPU下< 5%
    EcHmi从1.0到目前的8.1历经5年多,经过不断的实际工程应用、改进,已经很成熟。
 
  下载EcHmi8.1免费版(内含说明书)  
[url=http://www.kipway.com]http://www.kipway.com[/url]

热门招聘
相关主题

官方公众号

智造工程师
    首页 上一页 1 2 3 4 下一页 尾页