whitemarch
级别: 正式会员
精华主题: 0
发帖数量: 6 个
工控威望: 95 点
下载积分: 479 分
在线时间: 3(小时)
注册时间: 2016-08-27
最后登录: 2019-04-06
查看whitemarch的 主题 / 回贴
楼主  发表于: 2019-04-01 20:33
     各位好,因为是plc新手,手册看了但是写的不是很懂,所以请教各位
plc cpu型号为Q06UDEH,软件为gx works2 1.536j.

     我在读取plc时出,其中有两个程序出现此画面

图1



图2

  

  plc程序共有9个,因为之前我不需更改程序 main_11及main_12 ,所以我没啥去理
最近因为需更改这两个部分,所以去查才知道读取时需将 "使用标签" 打勾,读取后画面如下

图3  



  查了网络信息,因为是使用标签关系 , 因为我读出时,程序检验不一致(我目前需改main_11的程序),

图4
  


而站友的答案是说

程序是用了标签功能。程序没有将最后一次完整的编译信息写入PLC。先读出带标签的编译信息,再另新建一个不带标签的读出梯形图,可两个融合起来。

于是我先将 "使用标签" 打勾,再将plc读出 --将档案存为A , 然后再新建一个,然后使用标签 不打勾,再读出 --将档案存为B
因为不知道如何融合,所以我是将 读出不带标签的程序读出后,然后将工程类型更改成使用标签,再编译 (因为出现红字)

图5
   


图6
    

  
编译完成出现下面information,有出现错误代码

然后打开档案A(使用标签),将其它程序砍掉,只留main_11,然后将档案B的main_11 覆盖回去
此时检验程序,发现一致,我想应该是没问题了,如图

图7
    


但写入时出现此画面,所不敢写入

图8
    


图9
    



所以目前有几个问题想请教各位

1. 编译完成時,有時會出现错误代码,如下
    图10    
        


    图11
       


   其中error为0 , warning为0 ,但有错误代码,请问可以不理直接写入吗?
   不然就是会出现如下图
  
    图12
        


    图13
        

  
2. 写入时源代码信息一定要写入吗?  
    如果是的话,那可以像我上述一样,只写入源代码信息外,只写入一个我需要的程序(main_11)
    还是说全 部都要写入?

    图14    
      

  
3. 我的步骤是正确吗? 也就是如上说明的覆盖方式 (检验后程序是一致的)
    出现如上的讯息可以不理,直接写入吗??

4. 为甚么我用plc校验时,未使用标签读出的程序,都是一致的,而使用标签的都不一致,  表示当时的厂商是否不理直接写入?? (如图1,2所示)
[ 此帖被whitemarch在2019-04-01 22:23重新编辑 ]
焦刘吉
紧跟时代发展,努力做好时代青年
级别: 工控侠客
精华主题: 0
发帖数量: 1460 个
工控威望: 4682 点
下载积分: 14955 分
在线时间: 429(小时)
注册时间: 2015-05-19
最后登录: 2024-11-14
查看焦刘吉的 主题 / 回贴
1楼  发表于: 2019-04-01 20:44
新建一个空白程序,记得用简单工程,同时把使用标签√上,再读取
Rules are always made by the strong, and history is always written by the winners.
whitemarch
级别: 正式会员
精华主题: 0
发帖数量: 6 个
工控威望: 95 点
下载积分: 479 分
在线时间: 3(小时)
注册时间: 2016-08-27
最后登录: 2019-04-06
查看whitemarch的 主题 / 回贴
2楼  发表于: 2019-04-01 22:24
我有用你方式,但校驗不一致,..
焦刘吉
紧跟时代发展,努力做好时代青年
级别: 工控侠客
精华主题: 0
发帖数量: 1460 个
工控威望: 4682 点
下载积分: 14955 分
在线时间: 429(小时)
注册时间: 2015-05-19
最后登录: 2024-11-14
查看焦刘吉的 主题 / 回贴
3楼  发表于: 2019-04-02 11:49
你是写入没有编译吧?
Rules are always made by the strong, and history is always written by the winners.
whitemarch
级别: 正式会员
精华主题: 0
发帖数量: 6 个
工控威望: 95 点
下载积分: 479 分
在线时间: 3(小时)
注册时间: 2016-08-27
最后登录: 2019-04-06
查看whitemarch的 主题 / 回贴
4楼  发表于: 2019-04-02 12:53
寫入時有先編譯,編譯完成後才可進行校驗
枫落云端
施主,脚抬一下
级别: 略有小成

精华主题: 0
发帖数量: 341 个
工控威望: 465 点
下载积分: 1595 分
在线时间: 410(小时)
注册时间: 2017-10-10
最后登录: 2024-11-18
查看枫落云端的 主题 / 回贴
5楼  发表于: 2019-04-02 12:58
也就是你现在的程序已经存在两个版本了。一个是无标签的在程序存储器里(正在运行的),想不导致程序错误的话,
先以程序存储器的程序为准。再读取已标签的源代码程序,把标签的源代码先全部编译后,再跟程序存储器的程序做校验,看看源代码 到底哪个程序及哪一处不一致,再改动带标签的源代码程序让它与程序存储器的一致为止。(当然,因为带标签源代码自动分配的软元件可能不会完全一致,这时候就要看程序的代码的功能一致就OK了,自动分配的软元件形式上对得上就不用管;主要关注的是源代码的语句哪些不同,哪些指令少了哪些指令多了)
whitemarch
级别: 正式会员
精华主题: 0
发帖数量: 6 个
工控威望: 95 点
下载积分: 479 分
在线时间: 3(小时)
注册时间: 2016-08-27
最后登录: 2019-04-06
查看whitemarch的 主题 / 回贴
6楼  发表于: 2019-04-02 13:45
看看源代码 到底哪个程序及哪一处不一致,再改动带标签的源代码程序让它与程序存储器的一致为止

我目前是將無標籤的轉換成標籤,然後將程序復製過去,校驗是正常一致的,這做法對嗎?
whitemarch
级别: 正式会员
精华主题: 0
发帖数量: 6 个
工控威望: 95 点
下载积分: 479 分
在线时间: 3(小时)
注册时间: 2016-08-27
最后登录: 2019-04-06
查看whitemarch的 主题 / 回贴
7楼  发表于: 2019-04-02 16:26
謝謝 枫落云端

知道原因,應該是再次修改程序時,未將源代碼打勾寫入
而是只勾選單一程序,感恩