打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
我的第一个Labview和Arduino控制器的互动设计

我这个设计用到了两个Arduino核心板,一个是Arduino Duemilanove 2009 ATMEGA328P 互动媒体 AVR单片机,一个是Arduino传感器扩展板V4 含RS485总线/无线数传/蓝牙串口接口。

 

它们的图片分别如下:

1、Arduino Duemilanove 2009 ATMEGA328P


 


 

2、Arduino传感器扩展板


 


 这两个电路板可以层叠在一起。

 

先不谈labview,看看我用一个电位器,通过PWM方法给一个LED调光。实验实景图。


 Arduino程序如下:

/* PWM方法给LED调光
 这个例子显示如何用analogRead()把电位计的电压值AD转换的数字量读到单片机,
 单片机再把AD转换的数字量正比换算成PWM的输出值,
 analogWrite()函数把PWM的输出值给LED调光*/
int potpin=0;//定义电位计相连的模拟接口0上 
int ledPin = 9;  //LED连在数字接口9上
float fadeValue;
void setup()
{
    pinMode(ledPin,OUTPUT);//设置LED接口为输出接口
    Serial.begin(9600);//连接到串行端口,波特率为9600
}
void loop()
{
    fadeValue=(float)analogRead(potpin)/1023*255;
    analogWrite(ledPin,int(fadeValue));
    Serial.println(int(fadeValue),DEC);
    delay(1000);   
}

 

然后,不用电位器调光,而是用上位机软件labview,在它的前面板上搞个滑动杆,通过移动滑块,来改变与下位机Arduino控制器相连的LED灯的亮度。

Labview与Arduino控制器是通过COM7串行通信的,波特率9600bps

Labview前面板图:

 

labview框图程序:

当然下位机Arduino控制器的程序与上面有电位器的程序有些不同,就是去掉了电位器的输入,加上了下位机读取上位机命令的部分。

 labview控制下的Arduino程序:

/* PWM方法给LED调光
 这个例子说明把上位机软件labview送来数字量直接给PWM的输出值,
 analogWrite()函数把PWM的输出值给LED调光*/


 

int ledPin = 9;  //LED连在数字接口9上
int fadeValue;
void setup()
{
    pinMode(ledPin,OUTPUT);//设置LED接口为输出接口
    Serial.begin(9600);//连接到串行端口,波特率为9600
}
void loop()
{
    fadeValue=Serial.read();
    analogWrite(ledPin,fadeValue);
    delay(100);   
}

 

本设计程序打包下载:

PWM调节LED光(labview).rar
 

我给大家推荐个国内外机器人热门网址大全:

 http://www.robotic123.com

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Arduino教程 Lesson 5:呼吸灯
LabVIEW arduino:LED流水灯
教室灯光节电设计
自己动手打造家庭安保系统
Arduino教程-按键开关
三分钟认识什么是Arduino
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服