
Processing即图形设计语言。
Processing是一种具有革命前瞻性的新兴计算机语言,它的概念是在电子艺术的环境下介绍程序语言,并将电子艺术的概念介绍给程序设计师。
它是 Java 语言的延伸,并支持许多现有的 Java 语言架构,不过在语法 (syntax) 上简易许多,并具有许多贴心及人性化的设计。
Processing可以在 Windows、MAC OS X、MAC OS 9 、Linux 等 *** 作系统上使用。目前最新版本为Processing 3.5.4。以Processing完成的作品可在个人本机端作用,或以Java Applets的模式外输至网络上发布。
Processing起源:
Processing的创始者:Casey Reas与Ben Fry是美国麻省理工学院媒体实验室 (MIT Media Laboratory) 旗下美学与运算小组 (Aesthetics &Computation Group) 的成员。
美学与运算小组由著名的计算机艺术家John Maeda领导,于一九九六年成立至今,在短时间内声名大噪,以其高度实验性及概念性的作品,既广且深地在艺术及设计的领域里,探索计算机的运算特质及其带来源源不绝的创造性。
极少数人能完美结合并平衡艺术家、设计师和计算机工程师的才华于一身,更重要的是Casey和Ben拥有开放源码的胸襟。
Processing发展:在软件的测试阶段,Processing就已在网络上集结了一群志同道合的专业人士,为软件的教学与更新奠定了基础。
网站上的内容和参考文献就是完整的学习数据库﹔博览会中则提供了许多当今最杰出的电子艺术家的作品与连结﹔你可以在网站中的下载部分(Download)免费取得该软件,并在讨论版(Discourse)注册,这是一个完全民主式的论坛,可以问问题,发表意见,提供作品的交流,并一起准备未来的附加及外挂程序。
宏就是用公式来加工零件的,普通加工程序直接用指定G代码和移动距离,例如:
G01和X100.0。
使用用户宏程序时,数值可以直接指定或用变量指定,当用变量时,变量值可以用程序或面板 *** 作改变,如:
#1=#2+100; G01 X#1 F300。
扩展资料:
宏程序指令适合抛物线、椭圆、双曲线等没有插补指令的曲线编程;适合图形一样,只是尺寸不同的系列零件的编程;适合工艺路径一样,只是位置参数不同的系列零件的编程。较大地简化编程;扩展应用范围。
宏程序还提供了循环语句、分支语句和子程序调用语句,利于编制各种复杂的零件加工程序,减少乃至免除手工编程时进行繁琐的数值计算,以及精简程序量。
参考资料来源:百度百科-宏程序
一. 通讯的途径arduino和processing可以通过串行端口进行通讯,也就是我们常见的COM1、COM2什么的。在安装arduino驱动的时候我们已经设置了arduino的端口,我自己设置的是COM4,可以参考这里进行设置。
在arduino程序中也需要设置相同的端口:
processing接受和发送数据也是在这个端口进行的,在编写的代码中定义,不需要设置程序。
二. arduino通过串行端口发布数据
下面是arduino最简单的数据发布代码,将data的值“1”,通过串行端口发布出去
int data=1//创建变量,储存需要发送的数据
void setup()
{
Serial.begin(9600)//定义数据传输率为9600比特
}
void loop()
{
Serial.print(data)//通过串行端口发送data的值
}
将代码上传到arduino后,可以先通过串行端口@@@@@@@@@检查,当然,需要将@@@@@@@@@的数据传输率设置成代码中的一样。这样,我们可以在程序下方看到不断出现的“1”。
三. processing从串行端口获取数据
下面是最简单的processing从串行端口获取数据的代码,注意端口和传输率的值:
import processing.serial.*//引入serial库
int p_data//创建变量用于储存接收到的数据
Serial myPort//创建一个名为“myPort”的Serial对象
void setup() {
myPort = new Serial(this,”COM4″, 9600)
//定义myPort的端口和数据传输率
//应和Arduino保持一致
}
void draw() {
p_data = myPort.read()//读取从串行端口获得的值,并储存在变量p_data中
println(p_data)//打印p_data的值
}
运行代码后,可以看到processing程序下方开始有数据涌现了,这说明它已经取得了来自COM4,以9600比特发布的值。这里有两个需要注意的地方,其一是Arduino必须连接到电脑,其二是不能同时开启Arduino的串行端口监控器。
但是,数据虽然已经取得,但并不是Arduino发布的“1”,而是“49”,这个问题我们后面章节再谈。
四. Arduino获取来自串行端口的值
创建一个简单的Arduino程序用于接收来自串行端口的值,并通过一个LED来判断。我们选择13号插口是因为arduino电路板中本身就在这个插口集成了个小型LED,在这个范例中我们就不用自己连线了:)
int a_data = 0// 创建变量用于储存在串行端口收到的值
int ledPin = 13//设定一个LED插口,用于检测收到的值
void setup() {
Serial.begin(9600)//定义数据传输率为9600比特
pinMode(ledPin, OUTPUT)//定义13号插口为输出模式
}
void loop() {
if (Serial.available() >0) {// 在收到数据后再做出处理:
a_data = Serial.read()// 将收到的值储存在变量中
if(a_data){//如果收到“1”(a_data为真),点亮LED,否则熄灭
digitalWrite(ledPin, HIGH)
}
else{
digitalWrite(ledPin, LOW)
}
}
}
五. processing通过串行端口发布数据
processing没有像arduino一样的串行端口@@@@@@@@@,所以最好先创建上一步所述的arduino接收端。下面的代码根据鼠标点击状态发布“0”和“1”:
import processing.serial.*//引入serial
Serial myPort
//创建一个名为“myPort”的Serial对象
void setup()
{
myPort = new Serial(this, “COM4″, 9600)
//定义myPort的端口和数据传输率
//应和Arduino保持一致
}
void draw(){
}
void mousePressed(){
myPort.write(1)
//当鼠标按下时通过COM4,以9600传输率发布数值“1”
}
void mouseReleased(){
myPort.write(0)
//当鼠标松开时通过COM4,以9600传输率发布数值“0”
}
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)