LabVIEW学习笔记(1)

前言

昨天用LabVIEW写了一个贪食蛇的小游戏,主要参考了b站up蒋大开讲的一个视频,整个游戏的关键部分就是对数组的操作。这里面FOR循环对数组的操作很有趣。
今天参考了《LabVIEW案例实战》,写了一个自动售货机的程序,主要内容就是状态机的操作,没有什么新意。


1.贪食蛇

首先创建一个30×30的数组,用来做显示界面,也就是程序最上方。
然后分别建立几个数组,用来表示蛇身,食物,和下一步方向。蛇身体是二维坐标,其余几个用一维数组就可以(因为每次只在显示界面上显示一个点,用两个数字就可以表示,蛇身体包括了一组(x,y)坐标,因此要用二维数组(n行×2列)来显示)。

蛇移动:蛇身数组中,蛇头坐标根据下一步方向的位置移动,使用了创建数组函数,蛇头坐标加上下一步方向的坐标成为新的蛇头坐标,加到原来的蛇身上。蛇尾去掉,使用删除数组元素函数。
蛇吃食物:也就是蛇在移动的过程中不删除蛇尾。
食物产生:随机产生两个数,生成一个一维数组,加到原来坐标上。注意要判断食物是否产生在蛇身体上,如果产生在蛇身体上,则重新产生新的食物。
方向控制:扫描键盘输入,根据上下左右四个方向分别生成不同的坐标,与原蛇头相加后,即下一步蛇头要出现的坐标。
判断是否出界:即判断蛇头是否超过界面既可以。
绘制界面:也就是将蛇身坐标和食物位置组合成的二维数组中的每个元素取出来,然后在界面上点亮bool,用for循环取出每一个坐标,然后用真替换原来界面数组中的假。
程序从上至下分别是绘制界面,蛇身移动,产生食物,键盘操作,判断游戏结束。



1.创建数组函数:该函数连接多个数组或者向数组中添加元素。在贪食蛇中,食物,下一方向,蛇头为一维数组,蛇身为二维数组,即为向蛇身数组中添加元素。低维连接至高位,即向高维数组中添加元素。
2.删除数组元素:默认删除数组最后一个元素。
3. For循环:二维数组对应二重嵌套For循环,外层对应行,内层对应列。
4.在这里横坐标是x,但是对应的应该是第即列,同理,纵坐标y对应的是第几行。

有个小BUG就是蛇一回头就死了,目前的想法是可以判断蛇头加上下一个位置和蛇头后面的坐标是否相等,如果相等,则本次操作无效(与判断食物产生类似)。

售货机

在编程之前,首先要先想好状态图,确定好状态机中的空闲状态。
整个状态图大概是初始化,空闲,投币,判断是否大于50,如果是,就出货,找零,如果不是,就继续空闲,投币。空闲这个状态中,用了BOOL数组和一个子VI来判断下一刻进行什么状态,我觉得可以用事件结构来判断更简单。

条件结构外,while循环内可以用来记录当前进行什么状态。

太简单了就不放程序了。

滚珠丝杠副温度模块

这也是《LabVIEW案例实战》中的一个例子,唯一学到的就是多通道采集的时候虚拟隧道怎么设置,可以使用多个创建虚拟隧道的任务,然后分别设置参数即可。后面做项目的时候,可以将开始采集和定时设置设置在一个子VI中。

后面的坑

打算看完大学使用教程后再整体总结下,宝典上写的不详细的做点补充,然后开始看我和LabVIEW。

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值