读取FANUC进给倍率
读取FANUC机床的倍率信息需要用到 FOCAS链接库。
根据FANUC的连接手册可以知道,进给倍率信号存在 Gn012寄存器中。在机床上更改倍率开关,发现G0012寄存器值变化,经验证G0012就是要读取的寄存器。
查阅FOCAS函数说明,使用 pmc_rdpmcrng 函数进行读取。
输入
(1)库句柄;(获取的句柄)
(2)PMC地址类型的ID code; (0)
- 0i-D参考范围
|
ID code |
PMC地址类型 |
参考范围 |
(PMC类型) |
|
0 |
G (Signal to PMC->CNC) |
0-767 |
PMC |
|
0-767 |
PMC/L |
||
|
1 |
F |
0-767 |
PMC |
|
0-767 |
PMC/L |
||
|
2 |
Y |
0-127 |
PMC |
|
0-127 |
PMC/L |
||
|
3 |
X |
0-127 |
PMC |
|
0-127 |
PMC/L |
||
|
4 |
A |
0-249 |
PMC |
|
0-249 |
PMC/L |
||
|
A |
9000-9249 |
PMC |
|
|
9000-9249 |
PMC/L |
||
|
5 |
R |
0-7999 |
PMC |
|
0-1499 |
PMC/L |
||
|
6 |
T |
0-449 |
PMC |
|
0-79 |
PMC/L |
||
|
T |
9000-9499 |
PMC |
|
|
9000-9079 |
PMC/L |
||
|
7 |
K |
0-99 |
PMC |
|
0-19 |
PMC/L |
||
|
8 |
C |
0-399 |
PMC |
|
0-79 |
PMC/L |
||
|
9 |
D |
0-9999 |
PMC |
|
0-2999 |
PMC/L |
||
|
12 |
E |
0-9999 |
PMC |
|
0-9999 |
PMC/L |
(3)数据类型;(ushort)
(4)PMC地址起始号;(12)
(5)PMC地址结束号;(13)
(6)设定数据长度。(16)
|
type_d数据类型是0(字节型) |
: |
长度 = 8 + N |
|
type_d数据类型是1(字型) |
: |
长度= 8 + N × 2 |
|
type_d数据类型是2(长字型) |
: |
长度= 8 + N × 4 |
* N是数据写入的个数(如将一个数写进R1000到R1001,那么此时N=2)。
输出
输出类IODBPMC0、IODBPMC1、IODBPMC2三者中的一个。
类的定义如下所示,其中
type_a表示PMC地址类型的ID code;
type_d表示PMC数据类型;
datano_s表示PMC地址起始号;
datano_e表示PMC地址结束号;
经测试可以读取寄存器G0012的值,读取到的数值与实际倍率存在如下关系 255-G0012=实际倍率。
可能于数据存储的高低位顺序有关,我没有再继续深入研究这个问题。
读取FANUC进给倍率的更多相关文章
- hdu4038贪心(最快上升倍率,好题)
题意: 给你n个数,然后有两种操作 1.给其中的一个数+1,2.在序列里面增加一个1,然后给你一个m,表示进行了m次操作,最后问你操作之后所有数乘积最大是多少? 思路: 徒弟给我 ...
- Mitsubishi (三菱) Fanuc(发那科),CNC,网口数据采集,NC程序下发(其它品牌CNC,哈斯 马扎克 兄弟等,正在开发中)
1.话不多说,先看效果 三菱CNC Fanuc CNC 2.能采集的数据有如下: 产量,状态,轴负载,坐标,主轴转速,三个倍率(主轴倍率 进给倍率 快速倍率),进给速度,当前加工程序名/程序号,当前程 ...
- Unity读取 JSon配置文件
一.记录 只是记录,现在在项目中删除掉了.先保留下来,以飨来着!!当然有包括自己. 二.读取配置的代码 简单粗暴 [ExecuteInEditMode] public class Config : M ...
- CNC Fanuc 设备数据采集
为了这个Fanuc(发那科)数控机床数据的采集也花费了不少精力,先是去供应商那里了解,基本都是代理商,没有技术支持. 在网上也有关于Fanuc的以太网Ethernet连接文档,那里面有说明,大概是开发 ...
- Java利用内存映射文件实现按行读取文件
我们知道内存映射文件读取是各种读取方式中速度最快的,但是内存映射文件读取的API里没有提供按行读取的方法,需要自己实现.下面就是我利用内存映射文件实现按行读取文件的方法,如有错误之处请指出,或者有更好 ...
- PCB 机器学习(ML.NET)初体验实现PCB加投率预测
使用ML.NET建立PCB加投率模型对单一蚀刻工序进行加投率预测, 此实例为最简单预测,要想实现全流程加投率预测挑战难度还是挺大的,可以查看另一种关于大数据在PCB行业应用---加投率计算基本原理:P ...
- Android MediaPlayer 音频倍速播放,调整播放速度
本文链接: Android MediaPlayer 倍速播放,调整播放速度 现在市面上的很多音视频App都有倍速播放的功能,例如把播放速度调整为0.5.1.5.2倍等等. 从Android API 2 ...
- 西门子 S7-1500 PLC,使用手轮控制伺服电机
西门子 S7-1500 PLC,使用手轮控制伺服电机 本文描述了一种,1500PLC使用叠加定位的方法,实现手轮操作的方法. 手轮操作需要的功能 数控机床等设备上的电子手轮,起源于机械手轮.机械手轮是 ...
- iOS开发系列--音频播放、录音、视频播放、拍照、视频录制
--iOS多媒体 概览 随着移动互联网的发展,如今的手机早已不是打电话.发短信那么简单了,播放音乐.视频.录音.拍照等都是很常用的功能.在iOS中对于多媒体的支持是非常强大的,无论是音视频播放.录制, ...
随机推荐
- C++ 大作业资料总结
一般 C++ 大作业都是用 Qt 来写,Qt 本身带了很多例子,详见:https://doc.qt.io/qt-5/qtexamples.html# 如果你想偷懒的话,直接拿来改就好,或者去 Gith ...
- Kafka 权威指南阅读笔记(第三章,第四章)
Kafka 第三章,第四章阅读笔记 Kafka 发送消息有三种方式:不关心结果的,同步方式,异步方式. Kafka 的异常主要有两类:一种是可重试异常,一种是无需重试异常. 生产者的配置: acks ...
- 变量 + 数据类型(数字 + 字符串)(day03整理)
目录 一.上节课回顾 四 编程语言分类 (一) 机器语言 (二)汇编语言 (三) 高级语言 (四) 网络瓶颈效应 五.执行python程序两种方式 (一) 交互式(jupytre) (二) 命令行式( ...
- Java基础(四)注释
1.类注释 类注释必须放在import语句之后,类定义之前.eclipse中使用Shift + Alt + J快捷键添加类注释. 2.方法注释 每一个方法注释必须放在所描述的方法之前.除了通用标记之外 ...
- 详细讲解IPython
ipython是一个python的交互式shell,比默认的python shell好用得多,支持变量自动补全,自动缩进,支持bash shell命令,内置了许多很有用的功能和函数.学习ipython ...
- Mybatis JdbcType与Oracle、MySql 数据类型对应关系
MyBatis 包含的jdbcType类型 ------------------------------------------------------------------------------ ...
- Java中 实体类 VO、 PO、DO、DTO、 BO、 QO、DAO、POJO的概念
PO(persistant object) 持久对象 在 o/r 映射的时候出现的概念,如果没有 o/r 映射,没有这个概念存在了.通常对应数据模型 ( 数据库 ), 本身还有部分业务逻辑的处理.可以 ...
- docker 和 FastDFS上传和下载文件
1,从仓库拉取镜像 sudo docker image pull delron/fastdfs 也可以解压已经打包好的镜像文件 $ sudo docker load -i 文件路径/fastdfs_d ...
- linux centos ubutun svn搭建
1.卸载SVN 查看自己是否安装了svn svn 上图显示已安装,可用以下命令进行卸载 sudo apt-get remove --purge subversion (–purge 选项表示彻底删除改 ...
- Java 并发编程(四):如何保证对象的线程安全性
01.前言 先让我吐一句肺腑之言吧,不说出来会憋出内伤的.<Java 并发编程实战>这本书太特么枯燥了,尽管它被奉为并发编程当中的经典之作,但我还是忍不住.因为第四章"对象的组合 ...