读取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
1000-1767
2000-2767(Note1)
3000-3767(Note1)
4000-4767(Note1)
5000-5767(Note1)
6000-6767(Note1)
7000-7767(Note1)
8000-8767(Note1)
9000-9767(Note1)

PMC

0-767
1000-1767(Note1)

PMC/L

1

F
(Signal to CNC->PMC)

0-767
1000-1767
2000-2767(Note1)
3000-3767(Note1)
4000-4767(Note1)
5000-5767(Note1)
6000-6767(Note1)
7000-7767(Note1)
8000-8767(Note1)
9000-9767(Note1)

PMC

0-767
1000-1767(Note1)

PMC/L

2

Y
(Signal to PMC->machine)

0-127
200-327
400-527(Note2)
600-727(Note2)
1000-1127(Note2)

PMC

0-127
200-327(Note2)
1000-1127(Note2)

PMC/L

3

X
(Signal to machine->PMC)

0-127
200-327
400-527(Note2)
600-727(Note2)
1000-1127(Note2)

PMC

0-127
200-327(Note2)
1000-1127(Note2)

PMC/L

4

A
(Message)
   *Message display

0-249

PMC

0-249

PMC/L

A
(Message)
   *status display

9000-9249

PMC

9000-9249

PMC/L

5

R
(Internal relay)

0-7999

PMC

0-1499

PMC/L

6

T
(Timer)
   *Changeable timer

0-449

PMC

0-79

PMC/L

T
(Timer)
   *Variable-timer precision(Note3)

9000-9499

PMC

9000-9079

PMC/L

7

K
(Keep relay)

0-99
900-999

PMC

0-19
900-999

PMC/L

8

C
(Counter)

0-399
5000-5199

PMC

0-79
5000-5039

PMC/L

9

D
(Data table)

0-9999

PMC

0-2999

PMC/L

12

E
(Extended relay)

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进给倍率的更多相关文章

  1. hdu4038贪心(最快上升倍率,好题)

    题意:       给你n个数,然后有两种操作 1.给其中的一个数+1,2.在序列里面增加一个1,然后给你一个m,表示进行了m次操作,最后问你操作之后所有数乘积最大是多少? 思路:      徒弟给我 ...

  2. Mitsubishi (三菱) Fanuc(发那科),CNC,网口数据采集,NC程序下发(其它品牌CNC,哈斯 马扎克 兄弟等,正在开发中)

    1.话不多说,先看效果 三菱CNC Fanuc CNC 2.能采集的数据有如下: 产量,状态,轴负载,坐标,主轴转速,三个倍率(主轴倍率 进给倍率 快速倍率),进给速度,当前加工程序名/程序号,当前程 ...

  3. Unity读取 JSon配置文件

    一.记录 只是记录,现在在项目中删除掉了.先保留下来,以飨来着!!当然有包括自己. 二.读取配置的代码 简单粗暴 [ExecuteInEditMode] public class Config : M ...

  4. CNC Fanuc 设备数据采集

    为了这个Fanuc(发那科)数控机床数据的采集也花费了不少精力,先是去供应商那里了解,基本都是代理商,没有技术支持. 在网上也有关于Fanuc的以太网Ethernet连接文档,那里面有说明,大概是开发 ...

  5. Java利用内存映射文件实现按行读取文件

    我们知道内存映射文件读取是各种读取方式中速度最快的,但是内存映射文件读取的API里没有提供按行读取的方法,需要自己实现.下面就是我利用内存映射文件实现按行读取文件的方法,如有错误之处请指出,或者有更好 ...

  6. PCB 机器学习(ML.NET)初体验实现PCB加投率预测

    使用ML.NET建立PCB加投率模型对单一蚀刻工序进行加投率预测, 此实例为最简单预测,要想实现全流程加投率预测挑战难度还是挺大的,可以查看另一种关于大数据在PCB行业应用---加投率计算基本原理:P ...

  7. Android MediaPlayer 音频倍速播放,调整播放速度

    本文链接: Android MediaPlayer 倍速播放,调整播放速度 现在市面上的很多音视频App都有倍速播放的功能,例如把播放速度调整为0.5.1.5.2倍等等. 从Android API 2 ...

  8. 西门子 S7-1500 PLC,使用手轮控制伺服电机

    西门子 S7-1500 PLC,使用手轮控制伺服电机 本文描述了一种,1500PLC使用叠加定位的方法,实现手轮操作的方法. 手轮操作需要的功能 数控机床等设备上的电子手轮,起源于机械手轮.机械手轮是 ...

  9. iOS开发系列--音频播放、录音、视频播放、拍照、视频录制

    --iOS多媒体 概览 随着移动互联网的发展,如今的手机早已不是打电话.发短信那么简单了,播放音乐.视频.录音.拍照等都是很常用的功能.在iOS中对于多媒体的支持是非常强大的,无论是音视频播放.录制, ...

随机推荐

  1. GridSplitter

    <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="*" /> <Colum ...

  2. Ubuntu 14.04 kylin 安装 OpenCV 2.4.9|3.0.0

    首先安装依赖 sudo apt-get -y install libopencv-dev sudo apt-get -y install build-essential checkinstall cm ...

  3. django-URL重定向(八)

    HttpResponseRedirect()不常用 redirect(to,permanent=False,*args,**kwargs) to:指重定向的位置,可以是视图,也可以是url地址,也可以 ...

  4. SpirngCloud之Ribbon负载均衡(二)

    一 概念 Spring Cloud Ribbon是基于Netflix Ribbon实现的一套客户端 负载均衡的工具. 简单的说,Ribbon是Netflix发布的开源项目,主要功能是提供客户端的软件负 ...

  5. centOS7 永久关闭防火墙

    查看防火墙状态: systemctl status firewalld.service 如图 绿的running表示防火墙开启 执行关闭命令: systemctl stop firewalld.ser ...

  6. [springboot 开发单体web shop] 3. 用户注册实现

    目录 用户注册 ## 创建数据库 ## 生成UserMapper ## 编写业务逻辑 ## 编写user service UserServiceImpl#findUserByUserName 说明 U ...

  7. wfi破解

    破解wifi步骤 1.准备字典(常见字典 数字组合.常用姓氏.汉字姓名+年份组合等等) 2.无线网卡 3.查看附近WiFi信息 前言 : 随着无线网络走进我们的生活,在方便了我们的同时又产生了许多的安 ...

  8. 解决靶机Bee-Box 键盘乱序问题

    Bee-Box介绍 Bee-box官方称呼BWAPP,buggy web Application 这是一个集成了各种常见漏洞和最新漏洞的开源Web应用程序,目的是帮助网络安全爱好者.开发人员和学生发现 ...

  9. Android 常见内存泄露 & 解决方案

    前言 内存泄漏(Memory Leak)是指程序中己动态分配的堆内存由于某种原因程序未释放或无法释放,造成系统内存的浪费,导致程序运行速度减慢甚至系统崩溃 (OOM) 等严重后果. 那什么情况下不能被 ...

  10. 合并JSON对象的正确方式

    一. 前言 “JSON对象合并”是前端开发和 NodeJS 环境开发中非常常见的操作.开发者通常会通过循环遍历或一些库封装的方法或 JavaScript ECMAScript 2015 定义的 Obj ...