mach3安装和设置.docx
- 文档编号:28658062
- 上传时间:2023-07-19
- 格式:DOCX
- 页数:21
- 大小:3.07MB
mach3安装和设置.docx
《mach3安装和设置.docx》由会员分享,可在线阅读,更多相关《mach3安装和设置.docx(21页珍藏版)》请在冰豆网上搜索。
mach3安装和设置
MACH3的安装和输入输出设置
说明:
下文中未特意指出右击或双击等的均为鼠标左击,各个菜单、软按键、选项卡等用()括起表示,文件地址等字符串用“”表示。
1、mach3安装过程中,注意下图界面勾选处必须选择,否则安装将不能正常运行;
2、mach3软件安装完成后,按要求覆盖安装目录,至此Mach3应该安装成功;
3、成功安装后,启动(开始)菜单里的“machscreen”(此软件与mach3无关,如果没有则另行需要安装),(打开)——选择mach3安装目录下的“1024”,如下图,图中“是否”问的是“是否”查看各个图片的根目录;
4、左击“循环启动”图片,之后如下图
5、左击“imagebutton”后,如下图
6、双击“cyclestart”后,如下图,选择“OEMCyclestart”后,“OEMCode”栏后会自动由“0”变为“1000”
7、双击“hotkey”栏后,会出现一文本框,然后按“Alt+R”,之后如下图
8、(保存),至此所有操作目的为:
使mach3响应“Alt+R”;
9、双击安装目录下或桌面或开始菜单的“Mach3Mill”,启动铣床程序,点击(查看)——(加载新界面)——双击安装目录下的“1024a”,进得界面如下;
10、(设置)——(端口/针脚)进入下图,图中“内核速度”有7种选项,该选项与速度有关
11、,(电机输出)设置成下图,其中“enabled”意为使能,在此为功能开关,“steppin#”表示脉冲针脚号,“dirpin#”表示方向针脚,“dirlowactive”应是方向取反,“stepLowAc”应是脉冲取反,“stepport”应为脉冲端口号(第10项操作中“端口#1”默认为378h,因此本列使用378h时应为1),“dirport”应为方向端口号(第10项操作中“端口#1”默认为378h,因此本列使用378h时应为1),具体内容参看下表,至此步进电机正确连接后应该可以转动;
12、要想使用M3、M4、M5、M7、M8、M9等输出信号还要进入(主轴设置),例如“冷却M8输出#【a】【b】”,其中a为与“输出信号”的“signal”列中的“Output#1~#5”相呼应,b为反向切换的延迟时间;
如此设置后使用m3或m4使1号机械手夹紧,m5使1号机械手放松,m7或m8使2号机械手夹紧,m9使2号机械手放松。
13、下面进行输出设置,“enabled”应为使能之意,“Port#”应为端口号之意,“pinnumber”应为针脚号之意,“activelow”应为反向或反接之意,如下图设置之后可实现:
M3或M4(呼应12步的设置)使#1针脚高电平,即1号机械手夹紧,M5使#1失电,即1号机械手放松;M7或M8(呼应12步的设置)使#14针脚高电平,即2号机械手夹紧,M9使#14失电,即2号机械手放松;Output#5的设置呼应了D:
\mach3\macros\Mach3Mill\m77、m78、m79.m1s的内容;Output#6的设置呼应了D:
\mach3\macros\Mach3Mill\m87、m88、m89.m1s的内容;至此输出设置基本完成。
m77的内容:
ActivateSignal(Output5),意为Output#5输出,呼应本步设置。
m78的内容:
DeActivateSignal(Output5),意为Output#5关闭,呼应本步设置。
m79的内容(ActivateSignal()、DeActivateSignal()函数与Code""混编不能正确执行):
Code"M77"
Code"G4P0.1"
Code"M78"
m87的内容:
ActivateSignal(Output6),意为Output#6输出,呼应本步设置。
m88的内容:
DeActivateSignal(Output6),意为Output#6关闭,呼应本步设置。
m89的内容(ActivateSignal()、DeActivateSignal()函数与Code""混编不能正确执行):
Code"M77"
Code"G4P0.1"
Code"M78"
14、(输入信号)设置中:
“enabled”意为使能,“port#”意为端口号,“pinnumber”意为针脚号,“activelow”意为反向或反接,“emulated”意为模拟(此处不太明白),“hotkey”意为热键(此处不太明白)。
如下图设置完成后可实现:
#12针脚与GND接通时Estop响应,#10针脚与GND接通时OEMTing#1响应,#11针脚与GND接通时OEMTing#2响应,#13针脚与GND接通时OEMTing#4响应。
OEMTing#1~4都代表什么,这还需要在下一步进行设置。
15、(设置)——(系统热键),设置结果如下图,其中,点动热键的设置方法,例如(A/U++)——再按键盘’<’则设置值为188其响应按键“,(<)”;,而“触发#4OEM代码值1000”方法为手输“1000”,作用(意义)为#4触发时(#13针脚与GND接通),OEM值为1000,与7项中“OEMCode1000”呼应。
16、设置电机数据。
其中“stepsper”译为多少步每毫米;“速度in’sormm’s每分钟”意为速度,单位为mm/分钟;“加速度”的数据值为启动时的初始速度,并非越低越好,设置加速度数据时,用鼠标在加速线性选择行点选,有利于获得更优秀的数据值。
如果设置速度前对内核速度设置有改动,则需要关闭软件再重新开启,才能设置正确。
经试验可设置如下
新值为。
。
。
。
。
。
,20000,2000,。
。
。
。
。
。
17、关于干扰信号的解决
一些家用电脑因为外壳没有良好的接地,干扰信号容易使保护电路误动作,可以在设置----总体设置中将信号抖动值加大可以忽略干扰信号
18、mach3的部分VB函数和命令
编辑好VB后保存为mach3\macros\Mach3Mill\Mxx.m1s
mach3软件支持2个并口存在,地址可根据实情设置
比如我们一个并口有12个输出端,用了6个3轴步进信号,其他的都可以用来做输出,如控制主轴正反转,水泵,可以用M03M04M05M07M08命令实行,其他的端口可以用VB语言实现,如控制输出Output#9。
ActivateSignal(Output#9):
Output#9输出
DeactivateSignal(Output#9):
Output#9关闭
在VB中也可以执行G代码,如:
Code"g04p6"写代码
也可以执行OEM代码,如DoOEMBUTTON(1021),模拟执行OEM代码(1021为急停)
执行输入,如:
systemwaitfor(input3),意为等待#3输入(原文为等待输入,我觉得应该为读取,尚未试验)
还可以实现坐标清零操作
callSetDRO(0,0):
X轴清零
callSetDRO(1,0):
Y轴清零
callSetDRO(2,0):
Z轴清零
例如,dimaasinteger,意为定义一个名为a的整数型变量。
dim是定义,每当你需要一个变量的时候,就必须先定义
as意为属性
string是字符串类型,比如"你好"
Single是单精度浮点数,个人比较粗略的理解就是小数
integer就是整数
a=GetVar(1000),意为获取#1000变量的值赋予a。
SetVar1001,a,意为把a值写入#1000变量。
'用于书写注释。
rem等效于‘,意为注释;
一个屏幕变化的VB例:
DimScreenAsInteger声明一个整数变量
Screen=GetPage()屏幕
Screen=Screen+1屏幕加1
IfScreen>6thenScreen=1如果屏幕大于6就回到1
DoOEMButton(Screen)执行屏幕代码
取整int,例如printint(5/3)输出1
整除\,例如print5\3输出1
IF……Then(如果。
。
。
则)
Else(反之)
Endif(结束如果)
goto意为跳转,猜测目的应为字符串,与c语言类似
以下程序经过了验证
Dimbn1AsInteger’定义了一个名为bn1的整数型变量
bn1=1’
xhqi:
if(bn1<10)then’标记此段为xhqi,如果bn1<10则执行以下到endif之间的内容
callquliao()’调用子函数(子程序)quliao
gotoxhqi’转到xhqi
endif’结束if
subquliao()’定义了名为quliao的子函数
bn1=bn1+1’
code"G90G0Y60"’执行G代码
code"Y0"’执行G代码
endsub’子函数结束
while"条件语句"
...循环体...
wend
不等于为<>
以下函数或命令有理解,但未经验证
For ··· Next ···语句的一般格式:
For 变量 = 【Start】 To End [Step]
[需要循环的语句]
[Exit For]
Next 变量
说明:
(1)、For 后的“变量”与 Next 后的“变量”为同一个,“变量”应该是数值类型的。
(2)、Start 代表的是循环的初始值,End 代表的是循环的终值。
假设从 1 到 100 进行循环,那么,循环初值是 1 ,终值是 100 ;(3)、To 是循环中的关键字,表示从初值到终值的范围,不能省略
WhileFeed<=0,意为while循环
Wend意为While结束
for循环应该支持
SafeZ=GetSafeZ(),意为获取当前z坐标值
tool=GetSelectedTool(),意为获取当前刀具号码值
SetCurrentTool(tool),意为把tool写入新值
以下命令或函数暂无理解
GetUserLED()
Array()的函数,例MX=Array(7,"",+5.125,0,""),用于通过函数向变量传递参数来初始化一个Variant(Variant数据类型是所有没被显式声明(用如Dim、Private、Public或Static等语句)为其他类型变量的数据类型)类型的数组。
例:
Code"F"&Feed,意为代替命令F,值为Feed。
OpenDigFile()
CloseDigFile()
XPOS=GetOEMDRO(1072)
Feed=Question("FeedRtaecan'tInputarightValue:
")
CallSetUserDRO(1070,Feed)
SetIJMode()
rpm=GetRPM()
SetSpinSpeed(rpm)
Feed=CommandedFeed()
SetFeedRate(Feed)
19、mach3执行数控宏程序命令
跟fanuc系列数控系统一样,“#”为参数号;
Mach3提供了#1~#10320的参数;
“=”用于赋值,例如:
“#1=1”;
“【】”用于改变运算优先顺序,例如:
“#1=[#1+1]”,当写成“#1=#1+1”时不正确;
“()”内用于填写注释;
另外,mach3支持#【#3】的写法。
20、Mach3的子程序应写在主程序内,以字母O开头的指令字表示程序号,例如O1000。
21、Mach3串口与NLC嫁接相关操作
菜单-操作-编辑按钮脚本-选择目的按钮(正在闪烁的)-VB编辑器打开脚本,可以改变使用VB语言改变按钮功能。
例如,打开“换刀位置”脚本其内容为
“Code("G00G53Z0.00")'Rapidtheheadup
Code("G00G53X"&GetOEMDRO(1200)&"Y"&&GetOEMDRO(1201))
Code("G00G53Z"&GetOEMDRO(1202))”。
M类指令的功能也应该使用《VB编辑器》编辑。
也就是说可以做个按钮发送一个字符串到外部,也可以做成M指令发送一个字符串到外部,且互不冲突。
菜单-功能设置-设置MODBUS控制-在此设置串口数据。
例如要经串口发送“Hello”到外部,则程序应写为“CallSendSerial("Hello%")”。
(看似可行,试验不成功)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- mach3 安装 设置