智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 25955|回复: 68
打印 上一主题 下一主题

[其他] 手把手教你从零开始用labview编写智能车上位机程序(5)

  [复制链接]

0

主题

294

帖子

1

精华

功勋会员

Rank: 10Rank: 10Rank: 10

积分
4137

特殊贡献奖章

QQ
威望
2664
贡献
1409
兑换币
35
注册时间
2007-11-22
在线时间
32 小时
跳转到指定楼层
1#
发表于 2008-6-13 17:45:14 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
<><FONT color=#1a1ae6 size=6>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;图形绘制</FONT></P><P><FONT color=#1a1ae6 size=3>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 今天应该是讲到这个教程的最后部分了,有人看了肯定会觉得才写了这么点就没了。对这个教程,我在一开始写的时候就就是以简单为主,告诉大家如何入手labview。我学这个也没多久,像内存优化之类的高级功能还不熟悉,多进程也只是用了点皮毛而已。而且,这个车上位机软件编写还需要根据你的车上的程序和实际需要来修改,我这里只是讲述如何编写通用的上位机软件,也就是说你想编这个上位机软件时肯定会用到的技术,至于那些比较花哨的东西(比如改背景)可以不要,所以全部省掉。</FONT></P><P><FONT color=#1a1ae6 size=3>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 罗嗦了这么多,下面进入正题吧。在上篇中,我们拥有了一个简陋的通讯协议,在单片机上我们发送字符串“image”然后发送一个固定长度的图片,从左到右从上到下一次发送每个点的灰度值,而且这个灰度值的长度是固定的10*100。对于labview,每次收到的是4096个字节的字符串,从中搜索到“image”,然后把后面的10*100个字符串取出来,上位机就得到图像数据了。最后把这些数据用字“符串显示控件”显示出来,而且要把“符串显示控件”拖到合适大小才行。</FONT></P><P><FONT color=#1a1ae6 size=3>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 现在呢,我们要把这个些图像数据显示成图像该怎么办呢?原因不说了,见步骤:</FONT></P><P><FONT color=#1a1ae6 size=3>(1)把这些字符串转化成“无符号字节数组”。</FONT></P><P><FONT color=#1a1ae6 size=3>编程面板:编程-&gt;字符串-&gt;字符串/数组/路径转换-&gt;&nbsp;“字符串至字节数组转换”&nbsp; </FONT><IMG src="http://download.intelligentcar.cn/bbsupfile//upfile/截图01.jpg"></P><P><FONT color=#1a1ae6 size=3>(2)上面得到的是一位数组,下面把它转化成10*100的二维数组。</FONT></P><P><FONT color=#1a1ae6 size=3>编程面板:编程-&gt;数组-&gt;“转换数组维数”</FONT></P><P><FONT color=#1a1ae6 size=3><IMG src="http://download.intelligentcar.cn/bbsupfile//upfile/截图04.jpg"></FONT></P><P><FONT color=#1a1ae6 size=3>(3)平化像素图</FONT></P><P><FONT color=#1a1ae6 size=3>编程面板:编程-&gt;图形与声音-&gt;图形格式-&gt;“平化像素图”</FONT></P><P><FONT color=#1a1ae6 size=3><IMG src="http://download.intelligentcar.cn/bbsupfile//upfile/截图05.jpg"></FONT></P><P><FONT color=#1a1ae6 size=3></FONT>&nbsp;</P><P><FONT color=#1a1ae6 size=3>(4)绘制平滑像素图</FONT></P><P><FONT color=#1a1ae6 size=3>编程面板:编程-&gt;图形与声音-&gt;图片函数-&gt;“绘制平化像素图”</FONT></P><P><FONT color=#1a1ae6 size=3>编程面板:编程-&gt;簇/类/与变体-&gt;“按名称捆绑”</FONT></P><P><FONT color=#1a1ae6 size=3><IMG src="http://download.intelligentcar.cn/bbsupfile//upfile/截图06.jpg"></FONT></P><P><FONT color=#1a1ae6 size=3>(5)右边接入图片控件,就可以显示了。</FONT></P><P><FONT color=#1a1ae6 size=3>前面板:新式-&gt;图形-&gt;控件-&gt;“图片”</FONT><BR><BR><BR><IMG src="http://download.intelligentcar.cn/bbsupfile//upfile/截图07.jpg"></P><P><FONT color=#1a1ae6></FONT>&nbsp;</P><P><IMG src="http://www.intelligentcar.cn/images/affix.gif"><A target=_blank href="http://download.intelligentcar.cn/bbsupfile//upfile/串口接收示例4.rar" target=_blank>串口接收示例4.rar</A></P><P><FONT color=#e61abd size=5>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 只要你的单片机程序没问题,现在应该可以显示图片了。但是这个程序实在是太简陋了,面临的问题还有很多:</FONT></P><P><FONT color=#2292dd size=4>(1)这个程序有漏数据的情况,我明明发了3副,他却只能收到1副。</FONT></P><P><FONT color=#ff0033 size=4>答:有多种可能,在编这个程序时首先要考虑一下串口速度和所发送数据的数据量。还有就是目前这个labview上位机程序是有问题的,那就是每次从串口缓冲区读取4096个字节的数据,却只从中搜索了副图像,其他的扔掉了。我们可以使用“移位寄存器”把搜索后剩余的字符串与下一次收到的进行连接,然后再进行搜索,这样就不会漏掉了。</FONT></P><P><FONT color=#2292dd size=4>(2)我现在是在调试程序,那个图片的尺寸随时会不停地修改,这样做的话,每次修改真麻烦,单片机修改后还需要修改上位机软件,有没有可以使上位机自动适应这个参数的呢?</FONT></P><P><FONT color=#ff0033 size=4>答:可以修改通信协议,单片机每次发送图像修改为以下格式</FONT></P><P><FONT color=#ff0033 size=4>printp("size");printp("%3d%3d",high,width);print("image");printp("图像数据");</FONT></P><P><FONT color=#ff0033 size=4>然后在上位机上先截取前面的参数,然后再处理后面的图像数据。</FONT></P><P><FONT color=#e61abd size=5>程序运行速度怎么这么慢?我如何使用上位机软件来控制小车?如何向上位机软件发送更多的信息,包括车速等?等等等等。。。。。。。。问题实在是太多了。一下子真的说不清楚如果有需要我会单独发帖各个击破!</FONT></P><P><FONT color=#ff3300 size=5 face=幼圆><STRONG>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;偶近期看了一下这个帖子的回复,应者寥寥,这让我怀疑这几个帖子的实际价值,也许我在做无用功吧。最初是因为觉得上位机软件对做摄像头的很重要,但从来没看到有讲过这方面的帖子,有的话也都是写的很粗糙,虽然没空余时间,但还是写了。如果你们觉得对你有用,就回个帖子吧,大家讨论讨论!!谢谢!!!再这样的话我也不敢保证我能继续给大家发有价值的帖子了!!</STRONG></FONT></P>

0

主题

17

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
222
威望
187
贡献
23
兑换币
0
注册时间
2008-4-1
在线时间
6 小时
2#
发表于 2008-6-13 22:41:31 | 只看该作者

Re:手把手教你从零开始用labview编写智能车上位机程序(5)

<>谢谢 楼主 我觉得很有价值,虽然我对labView接触了一段日子 不过一直没明白串口的工作原理 谢谢楼主的辛勤工作</P>
回复 支持 反对

使用道具 举报

489

主题

1691

帖子

1

精华

管理员

网站创始人&站长

Rank: 11Rank: 11Rank: 11Rank: 11

积分
85927

特殊贡献奖章资源大师奖章论坛骨干奖章推广达人奖章优秀版主奖章热心会员奖章论坛元老奖章在线王奖章活跃会员奖章优秀会员奖章

QQ
威望
56985
贡献
17372
兑换币
13142
注册时间
2007-6-8
在线时间
5785 小时
3#
发表于 2008-6-13 22:44:07 | 只看该作者

Re:手把手教你从零开始用labview编写智能车上位机程序(5)

大家踊跃发言支持楼主呀
回复 支持 反对

使用道具 举报

0

主题

27

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
233
威望
211
贡献
22
兑换币
0
注册时间
2008-1-19
在线时间
0 小时
4#
发表于 2008-6-14 00:50:18 | 只看该作者

Re:手把手教你从零开始用labview编写智能车上位机程序(5)

我感觉很有用,也是一点点和楼主学的,楼主的精神!!!!!!!敬佩!!!!!!!!!
回复 支持 反对

使用道具 举报

0

主题

13

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
208
威望
186
贡献
22
兑换币
0
注册时间
2008-5-5
在线时间
0 小时
5#
发表于 2008-6-15 17:26:04 | 只看该作者

Re:手把手教你从零开始用labview编写智能车上位机程序(5)

<>都看了,看看点击率!</P>
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

注册会员

Rank: 2

积分
124
威望
172
贡献
22
兑换币
0
注册时间
2008-6-16
在线时间
0 小时
6#
发表于 2008-6-16 23:40:55 | 只看该作者

Re:手把手教你从零开始用labview编写智能车上位机程序(5)

<><FONT style="BACKGROUND-COLOR: #c7edcc">再次感谢,这对初学着很有帮助</FONT></P>
回复 支持 反对

使用道具 举报

0

主题

294

帖子

1

精华

功勋会员

Rank: 10Rank: 10Rank: 10

积分
4137

特殊贡献奖章

QQ
威望
2664
贡献
1409
兑换币
35
注册时间
2007-11-22
在线时间
32 小时
7#
 楼主| 发表于 2008-6-25 00:53:49 | 只看该作者

Re:手把手教你从零开始用labview编写智能车上位机程序(5)

<><FONT color=#1111ee size=4>在这几天的学习中,发现还是labview简单易学,vc功能强大,其他的编程序语言就起来是在不顺手。主要是现在没时间了,否则我肯定会选择用vc摆平。现在没时间了,决定还是把弄点labview优化的帖子吧,把labview优化一下,应该会解决问题。</FONT></P><P><FONT color=#1111ee size=4>最新版本</FONT><BR><IMG src="http://www.znczz.com/images/affix.gif"><A target=_blank href="http://down.znczz.com/bbsupfile//upfile/智能车调试系统10.rar" target=_blank>智能车调试系统10.rar</A><BR><BR><IMG src="http://www.znczz.com/images/affix.gif"><A target=_blank href="http://down.znczz.com/bbsupfile//upfile/智能车信息回放系统7.rar" target=_blank>智能车信息回放系统7.rar</A></P>
回复 支持 反对

使用道具 举报

0

主题

9

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
389
威望
270
贡献
79
兑换币
58
注册时间
2008-10-8
在线时间
20 小时
8#
发表于 2008-10-8 07:50:19 | 只看该作者

Re:手把手教你从零开始用labview编写智能车上位机程序(5)

这个...难道智能车进行运行中调试时,从计算机上拖根串口线出来连到智能车上?
回复 支持 反对

使用道具 举报

0

主题

294

帖子

1

精华

功勋会员

Rank: 10Rank: 10Rank: 10

积分
4137

特殊贡献奖章

QQ
威望
2664
贡献
1409
兑换币
35
注册时间
2007-11-22
在线时间
32 小时
9#
 楼主| 发表于 2008-10-8 17:09:05 | 只看该作者

Re:手把手教你从零开始用labview编写智能车上位机程序(5)

<>也可以通过串口接射频或者蓝牙模块。</P>
回复 支持 反对

使用道具 举报

0

主题

13

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
223
威望
201
贡献
22
兑换币
0
注册时间
2008-1-23
在线时间
0 小时
10#
发表于 2008-10-18 08:04:11 | 只看该作者

Re:手把手教你从零开始用labview编写智能车上位机程序(5)

<>楼主能留下联系方式吗?我也要做一个这样的软件</P>
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关于我们|联系我们|小黑屋|智能车制作 ( 黑ICP备2022002344号

GMT+8, 2024-12-26 02:18 , Processed in 0.249349 second(s), 36 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表