0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

什么是过程映像区与外设地址

机器人及PLC自动化应用 来源:机器人及PLC自动化应用 作者:机器人及PLC自动化 2022-10-09 17:18 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

过程映像区与外设地址

3c37822c-4581-11ed-96c9-dac502259ad0.jpg什么是过程映映像区,外设地址?

3c37822c-4581-11ed-96c9-dac502259ad0.jpg过程映像区最大范围是多少?默认设置是多少?能否更改默认设置?

3c37822c-4581-11ed-96c9-dac502259ad0.jpg过程映像区与外设地址是一一对应的吗?

3c37822c-4581-11ed-96c9-dac502259ad0.jpg使用的I/O地址超过了过程映像区范围怎么办?

为什么通讯指示灯正常,但读不到/写不进从站数据;读取的数值一直为0,写入的数值能看到,但从站无变化?

CPU31xC的集成I/O点,无法正常使用?

3c37822c-4581-11ed-96c9-dac502259ad0.jpg如何访问外设地址的Bool(布尔量)地址?

3c37822c-4581-11ed-96c9-dac502259ad0.jpgPQW无法直接监看?

什么是过程映映像区,外设地址?

当在程序中使用‘I.。。’或 ‘Q.。。’ 对输入、输出进行访问时,实际上并未直接访问输入、输出模板,而是访问 CPU 的系统存储区。此 ‘I’/ ‘Q’ 区分别被称作输入过程映像区和输出过程映像区 。

外设寻址意指直接访问外设模板,在地址前加上字母 ‘P’ 来表示:

PIB --》 Peripheral Input Byte 外设输入字节

PQB --》 Peripheral output Byte 外设输出字节

PIW --》 Peripheral Input Word 外设输入字

PQW --》 Peripheral output Word 外设输出字

PID --》 Peripheral Input Double-word 外设输入双字

PQD --》 Peripheral Output Double-word 外设输出双字

外设地址的最小地址为字节,即PIB、PQB。

模拟量输入为例理解IW与PIW:

PIW,直接读取物理地址,即直接采集模板信号

IW,每个扫描周期将模板数据读取至过程映像区,程序访问读取的是过程映象区数值。

过程映像区最大范围是多少?默认设置是多少?能否更改默认设置?

最大范围与默认设置与CPU型号有关。

注意:部分老款CPU型号无法更改过程映像区大小。

请具体参看如下手册链接:SIMATIC S7-300 CPU 31xC 和 CPU 31x:技术规范

过程映像区与外设地址是一一对应的吗?

不是一一对应。过程映像区每个扫描周期更新一次,同一扫描周期内数值不会变化。以下为系统扫描周期的更新过程:

执行 CPU 操作系统的内部工作。

将 OB1 中输出过程映像区的值写入到实际模板输出。

从模板读取实际输入值至 OB1 中的输入过程映像区。

执行 OB1 的程序。

执行第一步操作,开始下一次循环

而外设地址是实时更新数值,可能同一扫描周期内有不同的实时数值。此外,过程映像区默认设置以外的映像区地址,仅仅是普通的存储区,与外设地址并无关联。

使用的I/O地址超过了过程映像区范围怎么办?

可以采用两种方式:更改过程映像区范围 或 使用外设地址直接读取/写入

更改过程映像区范围

如图1所示,在CPU属性中可设置过程映像区大小。注意:设置的越大,会影响扫描周期时间。因此,建议设置到使用的地址范围即可。

3c998166-4581-11ed-96c9-dac502259ad0.png

图1 更改过程映像区大小如图2,部分老款CPU型号不支持更改(如6ES7 315-2AG10-0AB0)。

3ccc2940-4581-11ed-96c9-dac502259ad0.png

图2. 无法更改的过程映像区

使用外设地址直接读取/写入

使用PIB/PQB,PIW/PQW,PID/PQD对外设地址直接读取写入。问题1.为什么通讯指示灯正常,但读不到/写不进从站数据;读取的数值一直为0,写入的数值能看到,但从站无变化?问题2. CPU31xC的集成I/O点,无法正常使用?两个问题通常都为组态设置的地址超过了过程映像区设置范围;此时,按照以上办法操作即可。

如何访问外设地址的Bool(布尔量)地址?

以输入为例,由于外设地址的最小地址为字节,因此无法直接读取Bool地址。需要先用PIB/PIW/PID将数值MOVE到其他的存储区(如M,DB区),再访问M或DB的Bool地址。输出同理。

PQW无法直接监看?

是的。PQW为只写操作,无法监看。通常设置一个中间地址,写入数值先赋值给M区或DB区地址,再由M区或DB区地址,MOVE给PQW,监看这个中间地址即可。

同理,PIW为只读操作,无法写入。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • cpu
    cpu
    +关注

    关注

    68

    文章

    11320

    浏览量

    225832
  • 操作系统
    +关注

    关注

    37

    文章

    7432

    浏览量

    129597

原文标题:过程映像区与外设地址

文章出处:【微信号:gh_a8b121171b08,微信公众号:机器人及PLC自动化应用】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    IMX8MP 返回未签名内核映像的未找到 HAB 事件,为什么?

    我正在使用 UG10163(10.9 安全参考设计)进行安全启动。我生成了一个 wic 映像,其中包括签名引导加载程序和签名内核映像。 将此映像刷新到 SD卡后,我手动将 /boot 文件夹中的签名
    发表于 04-07 07:33

    请问如何确定我们是否安装了最新的固件、映像、内核?

    ,然后将完整的 image-69 重写到 sdcard 上。 这是我想确认我拥有最新固件和最新映像的地方。 问题#1是否有任何命令可以验证正在运行的固件? 问题#2是否有任何命令可以验证正在运行的映像
    发表于 03-23 06:40

    无法获得在 StarFive 上运行的 StarFive Linux 映像的 55 或 69 版本,怎么解决?

    我是 VisionFive 2 的超级早鸟支持者,我无法获得在 StarFive 上运行的 StarFive Linux 映像的 55 或 69 版本。绿色 LED 永远不会亮起。我尝试过使用此方法
    发表于 03-20 07:39

    安装官方 Ubuntu 23.10 映像时报错,求解决

    我正在尝试为我的 VisionFive 2 安装新的 Ubuntu 23.10 服务器映像,我之前安装了 Debian,并且有效。现在我从这里下载了实时安装程序下载适用于 RISC-V 平台
    发表于 02-10 06:54

    Linux内核大块内存申请:从场景到落地全解析

    网卡、硬盘等外设的 DMA 控制器,要求内存物理地址连续(无法识别虚拟地址映射),且需一次性分配大尺寸缓冲(如 1GB 网络帧缓存)。
    的头像 发表于 02-09 16:41 781次阅读
    Linux内核大块内存申请:从场景到落地全解析

    无法启动预安装的 Ubuntu 23.10 服务器映像怎么解决?

    从预安装的 Ubuntu 23.10 服务器映像启动: RISC-V/星五 VisionFive 2 - Ubuntu Wiki 我使用图像刻录机解压缩并将图像写入 microSD 卡。我在电路板关闭
    发表于 02-09 07:25

    Bootloader固件升级的步骤

    的备份复制到主映像这两种情况下,我们将通过 Bootloader 去运行目前的主映像中的代码。 在添加 Bootloader 功能时,最关键的部分是如何分配好每个部分的存储区域,从程序最开头
    发表于 11-19 07:41

    映射的操作

    原理 位带: 支持位带操作的地址 位带别名: 对别名地址的访问最终作 CM3 将用到位带的访问上(中途有一个
    发表于 11-18 07:03

    基于hbirdv2的APB总线添加外设(二)

    前文介绍了APB总线,以及基于APB总线添加外设的可能性。本篇分享基于hbirdv2的APB总线添加外设的具体过程。 1. APB slave硬件设计 APB slave的设计首先需要按照APB总线
    发表于 10-29 07:49

    基于hbirdv2的APB总线添加外设(一)

    本篇分享基于hbirdv2的APB总线添加外设过程,能力有限,希望能够互相学习。 1. APB总线介绍: APB(Advanced Peripheral Bus),外围总线的意思。是ARM公司提出
    发表于 10-29 07:26

    基于hbirdv2的APB总线添加外设(三)

    地址 在hbirdv2.h中添加自己外设地址,注意:地址为基地址,即在ICB总线上分配给外设
    发表于 10-29 06:39

    蜂鸟内核ITCM模块及取值过程

    都是16位和32位的,那我们是怎么访问ITCM得到指令的呢? 取值过程 地址对齐地读取指令 IFU中每次取值得到的数据都是32位的,而在ITCM输出的是64位地址区间对齐的数据,我们称为一个通道
    发表于 10-24 07:27

    E203外设的例化与编译配置

    外设,包括硬件例化、总线连接、底层开辟空间等一系列过程,同时需要在软件中配置地址、接口信号数据类型等,才能正常编译使外设运行相应的程序。接下来将以SHA256
    发表于 10-24 07:14

    如何利用 DDR 参数文件生成 Linux 映像

    如何利用 DDR 参数文件生成 Linux 映像
    发表于 09-02 06:39

    为什么无法在USB控制中心选择固件映像文件?

    我在开发 CYUSB3KIT-003 固件并将固件映像文件下载到 FX3 时遇到了一个问题。 我通过将 PMODE[2:0] 配置为 F11 来设置 USB 启动模式,并像往常一样将新开发的固件下载
    发表于 05-07 06:14