PM POST学习心得
最近狂研究PM 当然任何一个做NC的人, 对POST的更改都是觉得必不可少。 狂欣赏PM的高速加工 。 其POST的处理结果也是尽量圆弧逼近 ,遗憾的是 , PM不能编辑面等等 偶尔作做辅助面 显得有点麻烦 好了 话题转回 到POST上来
偶把PM程序头改成了我的CIM程序头一样 让大家看看PM也能达到一个好的效果 解析中如有不足之出 望各位达人指出
首先进入编辑模式 ,这是重点 , 先对个树形浏览器做个介绍
全局设置 这里的比较简单 各位只要认识几个英文就可以自己搞定
设置逼近方式 以及公差又PM决定 还是在POST的时候右PMPOST决定 这里 就用默认
的好了
我们先跳过命令 块(标准输出) 先讲参数
我认为我必须按照中国人的思维不叫它参数 或许叫它变量 更好一点 PM将各个变量分类管理 便于引用 PM不象CIM PM提供的变量(系统变量) 比较多 比如最小Z值 加工时间 都可以直接从 系统变量里找到 方便我们直接引用
但是 有的时候 默认的参数可能不是我们想要的 比如 加工时间是 以秒为单位
的 没有提供 X Y 行程等变量 这就要求我们自己定义变量(参数)
要自定义变量(参数) 右键单击 User parmaterers 增加 type par (GROUP par是用于NC的运动指令 比如G代码组 M代码组) 比如我现在增加一个参数 为 Delta_X 设置格式为 REAL 其中参数的值我们需要在 脚本中来实现 包括参数的计算 处理 赋值
要指出的是 我们在PM浏览器中定义的参数将被PM视为系统参数(这是相对与脚本来说的) 在PM内部来说 它是一个自定义参数 为了大家理解
我给它叫做 自定义系统参数 既然是系统参数 那么给它赋值必须要用特殊的方法 就好象你要改变它的默认值一样 参数一旦被定义 PM自动给它指定了一个初值0(如果是字符类的话 为空) 在脚本里我会提到
同样可以自定义格式 格式具体参数 就不一一介绍了 大家看看就知道了
个别形式不好理解 事实上大家不必对每一参数设置 便可以应用了
格式一旦定义 就可以在参数里应用具体的格式 下面我们将讨论结构 结构事实上也是参数
一般是用不上的 但是为了本讲解的完整性 有必要做一个阐述 方便各位坛友理解
结构就是参数的集合 因此我们可以叫结构为 参数集 因为我们有时需要数据成组的输出
那么结构就是一个很好的工具
假如有系统参数 x , y, z 因为参数是单独存在 所以要引用的话要引用三次
如果我们将其定义为一个结构 那么 我们引用的时候就一次完成 我们叫它宏参数吧 或许你可以有一种更便于理解的叫法诸如大参数、参数组等等
OK 基本的已经好了 后面 我们将进行主要的输出操作(标准处理) 不过又是打字 又是捕捉图片的 挺累的 前面一个坛友发话了 为什么要用PMPOST PMPOST也是直接选就可以处理 不必单独处理 他的优点是 定义比DUCTPOST方便 当然也比 CIM EXF定义方便 而且提供很多高级的JAVA处理技术 可以说你可以用它实现非常高级的功能标准处理沿用 PM HELP的说法 StandardResponse
高级处理沿用PM HELP的说法 advancedResponse
当然advancedResponse涉及到 面向对象编程 本程序头用到的是JAVA SCRIPT 实现格式化输出
标准处理 将是 大多数人需要更改的地方
标准处理可以说是 选什么输出什么
这里我想需要对子命令做一点讲解:
子命令可以是用户自己定义的命令 也可以是系统命令 一般来说 子命令用在 需要计算参数的情况 因为当自己定义了参数 我们需要对参数进行计算 赋值 标准处理是不能进行参数进行计算和赋值 处理的 为此 选了一个自定义子命令 也就意味做 需要用到高级处理 下面我们来看看前面定义的Detla_x是如何被定义成子命令来计算的 以及在START里是如何引用的: 子命令定义 在没定义函数前暂时选择 标准处理 当在SCRIPT里定义了函数 在回到 这里将其改为高级处理 (选择我们定义的函数)
function my_calc(){
var temp;
//定义一个临时变量 这和PM的系统参数 和 自定义系统参数 不一样 可以直接赋值
temp=core.GetParam("%p(X Block Max)%")-core.GetParam("%p(X Block Min)%"); /*计算处理
core是PM提供的内置对象,对象有获得参数的行为 访问行为需要用到 .作为路径 */
core.SetParam("%p(Delta_x)%",temp);
// 对我们设置的自定义的系统参数赋值 前面提到系统变量要用 CORE对象提供的SET行为
return "";
//每一个函数必须返回一个字符串参数,这里我们返回一个空的字符串
现在回到前面 我们定义的子命令 选择我们定义的函数 my_calc()
上面我们不但定义了一个函数 而且定义了一个子命令 子命令是用函数处理的 这和标准处理截然不同
需要引起注意
细心的你可能注意到了 这个子命令没有做任何输出 只是计算了一个值 把这个值赋给了自定义系统变量DELTA_X
因为我们的目的不是要他输出什么而是完成 计算 给系统变量DELTA_X设置计算结果 因此 这个子命令将在START里面被调用 这也就是为什么要叫子命令
现在我们就可以在开始(程序头)部分的任意位置 填入参数DELTA_X已输出X的行程 是不是很简单
第二篇:ASP-NET学习计划
学习ASP.NET 的建议流程
如果你已经有较多的面向对象开发经验,跳过以下这两步:
第一 掌握一门.NET面向对象语言,C#或VB.NET
我强烈反对在没系统学过一门面向对象 (OO)语言的前提下去学ASP.NET。 ASP.NET是一个全面向对象的技术,不懂OO,那绝对学不下去!
第二 对.NET Framework类库有一定的了解可以通过开发Windows Form应用程序来学习.NET Framework。ASP.NET是建构在.NET Framework之上的技术,你对.NET Framework了解得越深,学习ASP.NET就越快。举个例子:下面简单列出几个对掌握ASP.NET非常重要的概念:对象的内存模型,委托,事件,多线程,程序集和应用程序域,安全模型 .NET Framework当然还有许多其它的东西,但不理解与把握清楚上述这些东西,是很难真正把握ASP.NET的。出于急迫的心情与现实的考虑,不少人没有扎实的面向对象基础就想直接学习ASP.NET,其结果只能是欲速则不达。在具备了OO基础之后,以下是具体的学习ASP.NET技术步骤。
第一步:学习HTML与CSS
这并不需要去学一大堆的诸如Dreamweaver,Firework之类的各种网页设计工具,关键是理解HTML网页嵌套的block结构与CSS的box模型。许多ASP.NET控件最后都必须转化为HTML。而且,div+CSS是当前主流的网页布局模型。学习这部分时,关键在于理解概念,而不需要将精力花在美化页面的许多技巧上,那是网站美工的工作,不是程序员的工作。
第二步:学习JavaScript
JavaScript不是Java,它主要运行于浏览器端。可以完成许多工作,功能也很强大:比如它将客户端网页中的HTML元素看成一棵树,可以编写代码访问并修改树节点,动态生成新的HTML代码,从而达到动态修改网页显示特性的目的。 JavaScript在目前的网站开发中用得很多,非常重要。 另外,它也是目前非常流行的AJAX技术的基础。
第三步:学习计算机网络原理
找一本大学<计算机网络>教材,重点看看它的有关互联网的部分,了解一些域名解析和HTTP协议等知识。这是进行互联网开发的理论基础。
第四步:学习ASP.NET表示层技术,
会设计Web页面 需要结合先前打好的面向对象技术的基础,至少掌握以下内容:
1) 各种Web控件的使用方法,
2) 理解信息在网页中的传送方式,比如Cookie,ViewState,Session等的使用。
3) ASP.NET应用程序与网页的生命周期,以及相关对象(比如httpcontext,response,
request)的用途。
4) ASP.NET实现事件驱动的内幕
5) 自定义用户控件 再次强调一下,没有OO基础,很难掌握上述技术,就只能被
这些东东牵着鼻子走了,会很被动。
第五步 掌握数据库技术
具体地说,要学习以下内容:
1) 学会使用SQL Server 2005:不要求精通它的各种工具与管理配置技术,但至少知
道如何连接,如何建表,如何创建存储过程
2) 学习ADO.NET,掌握使用代码人工访问数据库(别用VS2005的向导)的方法
3) 学习数据绑定控件的使用
第六步 理解多层架构
这时,先前在OO学习阶段涉及到的程序集与应用程序域等就派上用场了,现在,网站架构大多采用多层架构:表示层、业务逻辑层、数据存取层以及数据库本身。 可以先上网找一此多层架构的资料看,再找一个现成的比较复杂的开源ASP.NET项目分析一下其架构就差不多了。基本上都是一个套路,到处应用。
有的朋友问:学习架构是不是必须学习设计模式。 我的看法是:不必!当然,你如果学习过设计模式,那当然更好。但在实际开发中,如果只想着机械地套用某种模式,反而起不到好的结果。我的观点:在学习设计模式时要多思多悟,其思想就会渐渐地融入你的大脑,在真实的设计实践中,忘掉所有的写在书上的模式,一切从实际出发,相信你的直觉,只要达到设计要求的方案就是可行的方案,事实上,你这样做了之后,回过头来再看,会发现你的设计往往暗合设计模式的理论。
第七步 学习XML与Web Service
先了解XML的基础知识,找本讲XML的书看一下就差不多了,然后,再学习Web Service。Web Service其实可类比为远程方法调用(以XML格式表达的调用信息)。 学到了这里,如果你还有兴趣,不妨再去看看SOA,不过SOA的资料都是理论与概念,看起来比较郁闷,而且离实际开发可能比较远。所以,这是可选项。
第八步 学习AJAX
学习AJAX的主要目的是创建具有更丰富特性的Web表示层,而经过前面七步的学习,到此再学习AJAX已水到渠成,所有的基础都已具备,不会有太大的问题了。 在基础未具备的前提下直接学AJAX,就象“浮沙之上筑高台”,所以,将AJAX的学习次序安排在这里。
第九步 学习RIA技术
RIA:Rich internet application,可看成是将C/S与B/S优点合二为一的尝试。就具体技术来说,主要指微软的Silverlight(WPF_E),毕竟前头一路行来都是微软路线。 不过目前学习它主要是为了技术储备。估计此技术的普及需要2到3年的时间,因为预装Vista的机器今年才开始大卖。