《Arduino与LabVIEW开发实战》-前言

Arduino是开源硬件的典型代表,Arduino控制器板卡、简单易用的Arduino IDE,以及Arduino简单易懂的语言,淡化了单片机底层硬件的知识,极大地简化了单片机的软硬件设计,让很多不懂单片机等底层硬件的科技爱好者也可以进行电子制作,同时社区论坛拥有很多爱好者制作的参考示例可供参考使用,而且社区论坛和参考示例也在不断地增加。

LabVIEW是图形化编程软件的代表,采用图形化编程语言进行软件设计,具有表达形象、易于阅读、便于理解的优点。只需要选择合适的控件并合理布局,很轻松的就可以构建出一个漂亮的仪器仪表界面;框图编程部分采用直观的连线方式实现函数之间的数据传递。同时拥有大量的操作面板控件和不同功能的函数库,可供大家调用。

ArduinoLabVIEW均为将原来复杂繁琐的单片机设计和软件设计变得简单化,更加亲民、易于接受和学习;同时Arduino控制器需要简单易用的上位机软件,实现较为复杂的运算与显示功能;LabVIEW软件需要便宜好用的下位机,负责采集数据和输出执行的任务;如果将两者结合起来组成上下位机系统,各司其职,分工协作,即可实现两者的功能互补。而如何使用Arduino控制器和LabVIEW软件,并将两者有机结合起来,做出基于Arduino控制器与LabVIEW软件的实际应用和项目,是本书讨论的主要内容。

目标读者

本书适合大中专院校的仪器仪表类、电子类、通信类、计算机类等专业学生阅读,还适合Arduino学习者、LabVIEW学习者以及渴望利用ArduinoLabVIEW实现自己想法的创客们。

关于本书

我在南京理工大学攻读硕士学位的时候,跟随导师采用LabVIEW软件来完成科研课题,发现很多课题之中都有数据采集需求,而且对采样速率和采样精度的要求不高,但却需要花费几万块去购买NI公司的数据采集卡,这极大地限制了在对成本敏感的项目中使用LabVIEW软件。然后,我就开始自己采用单片机搭配高性能的A/D芯片制作简易的数据采集设备,以满足低速、低成本的数据采集任务,并成功的应用于很多项目中。

后来,在网上遇到了南京嵌入之梦工作室的丁齐老师和郑岩峰、戴晓天、金小飞等人,一起联合成立了南京创客空间。在创客空间的活动中,发现很多人都使用Arduino来做原型开发,深入学习了Arduino之后觉得如获至宝,便将ArduinoLabVIEW结合起来制作了很多有趣儿的玩意儿。这时候,还发现了NI公司提供了LabVIEW Interface for Arduino工具包,试用之后觉得模拟采样库比较实用,可将Arduino控制器当作数据采集板卡使用,如果使用高精度的基准源则采集精度将会更高,同时说明NI公司很看好Arduino等开源硬件的发展。

极客工坊的郝弘毅站长向我推荐了机械工业出版社的张国强先生,为了让更多的人能学习ArduinoLabVIEW的原型设计,我写作了此书。

本书的中Arduino程序代码和LabVIEW程序都可以在个人博客(www.shenjinxin.org新浪博客(blog.sina.com/shenjinxin2008上下载,并提供技术支持服务。

本书的内容及阅读建议

全书按照由易到难的顺序编写,同时各章节相对独立,分为Arduino基础篇、LabVIEW基础篇、如何连接ArduinoLabVIEW、基础实验篇、应用进阶篇和实战项目篇,共六个章节。

Arduino基础篇:讲述了Arduino的分类、如何搭建Arduino开发平台、数字输入/输出、模拟输入/输出、串口通信和时间函数,并穿插以实际操作的实验,以加深理解。

LabVIEW基础篇:讲述了虚拟仪器的组成、LabVIEW基础知识、数据结构、程序结构、常用的波形图表和波形图、基本的文件I/O操作、信号分析与处理,典型的设计模式,同时通过例子说明问题的解决方法。

ArduinoLabVIEW的连接:主要讲述了如何实现ArduinoLabVIEW的连接,包括LabVIEW Interface for Arduino方式、串口控制方式、无线串口方式和Ethernet方式四个部分,其中无线串口方式介绍了BluetoothAPC220ZigBee三种,而且在前三者中Arduino控制器都是通过串口与LabVIEW进行通讯,Ethernet方式则是通过Ethernet模块和网络与LabVIEW进行通讯。

基础实验篇:主要讲述了利用LabVIEW Interface for Arduino工具包,实现对Arduino控制器及外部设备的控制,其中将Arduino控制器作为数据采集卡使用,扩展了LabVIEW廉价采集卡的选用范围。

应用进阶篇:主要讲述了7ArduinoLabVIEW的应用,包括多路数据采集、热电偶高温监测、多路温度数字测量、温湿度测量、超声波测距、红外线测距和小量程电子称重系统,讲解了传感器及器件的选用与编程方法,并给出了Arduino控制器的代码清单和上位机程序框图。

实战项目篇:主要讲述了4个综合性的项目,包括无线遥控智能小车、个人小型气象站、智能农业监测系统和基于网络的远程智能家居系统,深入地讲解了系统的构成、硬件连接、软件设计和故障排除方法。

如果您是普通读者,不了解ArduinoLabVIEW,建议您从第一章开始按部就班的阅读到最后一个章节,并做好每一个实验,这可能会花费您大量时间和精力,但是这有助于您尽快地上手ArduinoLabVIEW,同时您需要注意本书提示部分的内容。

如果您是Arduino玩家,建议您跳过第一章直接阅读第二章LabVIEW基础篇,会使用LabVIEW软件之后,接着阅读第三章ArduinoLabVIEW的连接方式,在实现ArduinoLabVIEW的连接之后,再去阅读后面的基础实验篇、应用进阶篇和实战项目篇,最终做出属于自己的很酷的ArduinoLabVIEW的作品。

如果您是LabVIEW程序员,建议您从第一章Arduino基础篇开始阅读,熟悉Arduino控制器并完成每一个Arduino实验之后,然后跳过LabVIEW基础篇去阅读第三章ArduinoLabVIEW的连接方式,实现ArduinoLabVIEW的连接之后,再去阅读后面的基础实验篇、应用进阶篇和实战项目篇,最终做出属于自己的ArduinoLabVIEW的作品。

如果您是ArduinoLabVIEW的玩家,您可以阅读本书的任意章节,并可以根据本书的介绍来复现本书的应用和项目,由于拥有较好的功底,您最终可以做出属于自己的很酷的ArduinoLabVIEW的作品。

致谢

在本书结稿之际,首先感谢本书的策划张国强先生,他对Arduino的关注促使了本书的出版,并在写作过程中给予了非常宝贵的建议与意见。

其次,感谢我的妻子冯倩女士对我的支持与鼓励,冯倩女士对本书的校对和修改也做了很多的工作。另外,在本书的编写中,南京理工大学的陆旭峰、袁涛、杜超、王荣振,南京创客空间的郑岩峰、金小飞、江玉明、陈大庆、戴晓天,深圳柴火创客空间的陈威等人也参与了本书的校对和修改。

本书的程序代码在openjumperZduino UnoOCROBOTMango II兼容控制器上验证通过,感谢成都智能盒子有限公司的陈吕洲先生和杭州橡木桶科技有限公司的郝弘毅先生为我提供Arduino兼容控制器。

最后,感谢阅读本书的读者您花费时间和精力阅读本书。

由于作者经验和时间有限,本书也是对ArduinoLabVIEW的一种探索,书中难免存在错误和不足之处,恳请各位专家和读者不吝赐教。联系邮箱:[email protected]                                                      

                                                        作者:沈金鑫              

                                                                                          2013.10于南京理工大学

你可能感兴趣的:(arduino,LabVIEW,开发实战,机械工业出版社)