• «
  • 1
  • 2
  • »
  • Pages: 1/2     Go
hzy1818
级别: 家园常客
精华主题: 0
发帖数量: 458 个
工控威望: 627 点
下载积分: 1119 分
在线时间: 271(小时)
注册时间: 2007-08-30
最后登录: 2024-11-09
查看hzy1818的 主题 / 回贴
楼主  发表于: 2008-10-17 22:04
那位老大用过FM350-2高速计数器,帮忙传个实例上来学习学习。我在做一个升降杆上下距离控制,先谢了。
sjm213
有小知识,无大学问。
级别: 论坛版主

精华主题: 7 篇
发帖数量: 5200 个
工控威望: 7423 点
下载积分: 158799 分
在线时间: 3161(小时)
注册时间: 2007-11-21
最后登录: 2024-11-22
查看sjm213的 主题 / 回贴
1楼  发表于: 2008-10-18 00:31
在《FM350-2入门指南》和《FM350-2使用入门》中,就列出了西门子的样例程序和库文件的打开办法。

实际应用中,找到相应的任务号传送到DB块的寄存器中。任务号要看《FM350-2安装和参数配置》。
sjm213
有小知识,无大学问。
级别: 论坛版主

精华主题: 7 篇
发帖数量: 5200 个
工控威望: 7423 点
下载积分: 158799 分
在线时间: 3161(小时)
注册时间: 2007-11-21
最后登录: 2024-11-22
查看sjm213的 主题 / 回贴
2楼  发表于: 2008-10-18 23:27
如果在硬件设置里指定了该模块对应的DB块【Module adress for datablock】,那么模块的逻辑地址和通道地址无需在程序中再次编程设定。

然后调用FC2,同时指定前期生成的DB块号;然后调用FC4,并通过对DBB2设置工作号100或101来对0~3或4~7号通道进行读值;0~7通道对应的编码器值,为DBD148、DBD156……DBD204。
本帖最近评分记录:
  • 下载积分:+3(wsir123) 感谢指点!
    sjm213
    有小知识,无大学问。
    级别: 论坛版主

    精华主题: 7 篇
    发帖数量: 5200 个
    工控威望: 7423 点
    下载积分: 158799 分
    在线时间: 3161(小时)
    注册时间: 2007-11-21
    最后登录: 2024-11-22
    查看sjm213的 主题 / 回贴
    3楼  发表于: 2008-10-24 23:38
    简单的编程:

    sjm213
    有小知识,无大学问。
    级别: 论坛版主

    精华主题: 7 篇
    发帖数量: 5200 个
    工控威望: 7423 点
    下载积分: 158799 分
    在线时间: 3161(小时)
    注册时间: 2007-11-21
    最后登录: 2024-11-22
    查看sjm213的 主题 / 回贴
    4楼  发表于: 2008-10-24 23:51
    网络1:M100.0的常闭点一直通;
    网络2:必须调用FC2(CNT2_CTR),指定W#16#1即为设定FM250-2的数据块为DB1;
    网络3:打开其软件门  DB1.DBX23.0对应第一通道,DB1.DBX23.1对应第二通道,用几个通道就依次置ON几个;
    网络4:将任务号100写入DB1.DBB2,工作号100的意思是读前4个通道的计数值;工作号101的意思是读后4个通道;
    网络5:调用FC4(CNT2_RD),执行读数,W#16#1同样是指定DB块号。

    此时在程序中调用DB1.DBD148,即可获得计数器0的计数值;调用DB1.DBD156,可获得计数器1的计数值。
    sjm213
    有小知识,无大学问。
    级别: 论坛版主

    精华主题: 7 篇
    发帖数量: 5200 个
    工控威望: 7423 点
    下载积分: 158799 分
    在线时间: 3161(小时)
    注册时间: 2007-11-21
    最后登录: 2024-11-22
    查看sjm213的 主题 / 回贴
    5楼  发表于: 2008-10-25 00:00
    工作号的含义:

    其实对简单的使用来说用不到几个的。就用上边提到的就可以读出计数器值了。





    以下工作号参考使用【《FM350-2使用入门》例程中有提到】


    sjm213
    有小知识,无大学问。
    级别: 论坛版主

    精华主题: 7 篇
    发帖数量: 5200 个
    工控威望: 7423 点
    下载积分: 158799 分
    在线时间: 3161(小时)
    注册时间: 2007-11-21
    最后登录: 2024-11-22
    查看sjm213的 主题 / 回贴
    6楼  发表于: 2008-10-26 08:26
    DB1.DBB2是数据块db1内的2.0吗?

    DB1.DBB2的B2是字节2的意思吗

    是的,看西门子的数据结构
    ------------------------------------------------

    W#16#1是不是模块的地址号啊?

    不是,是定义的数据块号,1是DB1,2是DB2,以此类推
    sjm213
    有小知识,无大学问。
    级别: 论坛版主

    精华主题: 7 篇
    发帖数量: 5200 个
    工控威望: 7423 点
    下载积分: 158799 分
    在线时间: 3161(小时)
    注册时间: 2007-11-21
    最后登录: 2024-11-22
    查看sjm213的 主题 / 回贴
    7楼  发表于: 2008-10-26 20:24
    我的仿真就OK:

    sjm213
    有小知识,无大学问。
    级别: 论坛版主

    精华主题: 7 篇
    发帖数量: 5200 个
    工控威望: 7423 点
    下载积分: 158799 分
    在线时间: 3161(小时)
    注册时间: 2007-11-21
    最后登录: 2024-11-22
    查看sjm213的 主题 / 回贴
    8楼  发表于: 2008-10-27 23:14
    主要应该看看硬件组态里的设置是否正确。
    sjm213
    有小知识,无大学问。
    级别: 论坛版主

    精华主题: 7 篇
    发帖数量: 5200 个
    工控威望: 7423 点
    下载积分: 158799 分
    在线时间: 3161(小时)
    注册时间: 2007-11-21
    最后登录: 2024-11-22
    查看sjm213的 主题 / 回贴
    9楼  发表于: 2008-10-28 23:19
    对你的程序的仿真:


    sjm213
    有小知识,无大学问。
    级别: 论坛版主

    精华主题: 7 篇
    发帖数量: 5200 个
    工控威望: 7423 点
    下载积分: 158799 分
    在线时间: 3161(小时)
    注册时间: 2007-11-21
    最后登录: 2024-11-22
    查看sjm213的 主题 / 回贴
    10楼  发表于: 2008-10-29 22:07
    引用
    引用第21楼hzy1818于2008-10-29 20:10发表的  :
    sjm213 你好。仿真运行可以了,但是又在一个新问题了,就是如何在仿真上看到计数值?我改变piw的值后没在数据库db1中看到变化。

    实话说,我也没有在仿真中用过

    最好接上实体硬件试试,只要硬件无故障,那么DB中的数值就会变化。

    要模拟其他的程序,就直接当它是好用的就行啦。。。直接改掉DB1中的数值。
    sjm213
    有小知识,无大学问。
    级别: 论坛版主

    精华主题: 7 篇
    发帖数量: 5200 个
    工控威望: 7423 点
    下载积分: 158799 分
    在线时间: 3161(小时)
    注册时间: 2007-11-21
    最后登录: 2024-11-22
    查看sjm213的 主题 / 回贴
    11楼  发表于: 2008-12-03 13:19
    引用
    引用第27楼hzy1818于2008-10-30 00:03发表的  :
    sjm213 你好。如果我想控制一台升降电机,就是到上设定值返回,到下设定值上升,来回控制,用它的那一个功能比较合适,简单。



    这样的控制用编码器~~不知道为什么?
    “它的哪一个功能”-===这里的“它”是指什么?
    • «
    • 1
    • 2
    • »
    • Pages: 1/2     Go