智能车制作

 找回密码
 注册

扫一扫,访问微社区

楼主: 小豹
打印 上一主题 下一主题

专业智能车上位机调试软件将为各大高校提供免费服务

    [复制链接]

0

主题

2

帖子

0

精华

高级会员

Rank: 4

积分
629
威望
322
贡献
195
兑换币
212
注册时间
2013-7-14
在线时间
56 小时
毕业学校
合肥工业大学
113#
发表于 2015-4-8 20:53:13 | 只看该作者
小豹大神,能问一下你用的什么开发工具么?我的课程设计跟这个差不多,可是一点头绪都没有,求大神给一份源代码吧,跪求大神救命啊...1847889543@qq.com
回复 支持 反对

使用道具 举报

14

主题

82

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1705
威望
870
贡献
521
兑换币
545
注册时间
2014-1-9
在线时间
157 小时
毕业学校
华南师范大学
112#
发表于 2015-4-5 22:39:42 | 只看该作者
用豹哥的上位机有一段时间了,现在来说说一下感受吧(好的就不说了,直接提几点建议)。
1、波特率过高(115200)时容易丢失图像。(后来降为38400后就完全没问题了)(蓝牙串口)
2、停止接收后再重新接收数据时就接收不到数据了,必须得关闭串口然后重新打开才行
3、自带的算法只能适合固定大小的图像,如果算法对应的图像大小可以改动那就好很多了。
4、示波器波形不可以回放。调pid时如果可以回放来慢慢观察那获取又便捷了很多哦:hug:。
5、串口只可以监控不可以发送数据。用户有时需要发送一些指令或者修改参数,所以觉得这个还是需要的
6、示波器pid发送窗口的数据格式是否可以任意设置呢,而不是必须三位整数加三位小数,有时觉得挺麻烦的,也不方便处理:(;

最后送上我的pid数据处理程序吧,今天才写出了,勉强可以用,望指出不足之处
  char ch;
  static char PID_temp = 0;
  uart_pendchar(FreeCarsUARTPort, &ch);
  switch (ch)    //小豹上位机pid数据处理。数据格式:P001.200I000.060D050.123  
  {
      case 'P':
          PID_temp = ch;  //保存标志,为后面赋值
          ch = 0;
          P_DATA = 0;
          break;
      case 'I':
          PID_temp = ch;
          ch = 0;
          I_DATA = 0;
          break;
      case 'D':
          PID_temp = ch;
          ch =0;
          D_DATA = 0;
          break;
      case '.':
          PID_temp = 0; //小数点后的数据舍弃
          break;
      default :
          ch -=48;   //ASCII码转化为数据
          break;
  }
  switch (PID_temp)  //赋值
  {
      case 'P':
          P_DATA = P_DATA*10 + ch;
          break;
      case 'I':
          I_DATA = I_DATA*10 + ch;
          break;
      case 'D':
          D_DATA = D_DATA*10 + ch;
          break;
      default: break;
  }

为了观察数据发送是否成功,有个小技巧,用示波器的通道来显示你修改的数据;P;P
好了,谢谢豹哥的分享,望小豹上位机愈来愈强

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

5

主题

137

帖子

0

精华

高级会员

Rank: 4

积分
545
QQ
威望
287
贡献
140
兑换币
175
注册时间
2014-8-16
在线时间
59 小时
毕业学校
电子科技大学
111#
发表于 2015-4-3 22:12:14 | 只看该作者
:(:):):):)
回复 支持 反对

使用道具 举报

10

主题

150

帖子

0

精华

版主

Rank: 9Rank: 9Rank: 9

积分
4173

活跃会员奖章优秀会员奖章在线王奖章

QQ
威望
1826
贡献
1013
兑换币
564
注册时间
2012-3-1
在线时间
667 小时
110#
 楼主| 发表于 2015-3-29 20:42:06 | 只看该作者
ubutu 发表于 2015-3-29 19:16
给你说说我的思路吧,我是想借用你的上位机软件把下位机里的灰度数据接收过来,并且实时显示出来,但现在 ...

多出来的两个字节,就是帧头和帧尾0x01,其它的是图像数据,要自己处理图像数据没有0x01。
回复 支持 反对

使用道具 举报

10

主题

150

帖子

0

精华

版主

Rank: 9Rank: 9Rank: 9

积分
4173

活跃会员奖章优秀会员奖章在线王奖章

QQ
威望
1826
贡献
1013
兑换币
564
注册时间
2012-3-1
在线时间
667 小时
109#
 楼主| 发表于 2015-3-29 20:39:58 | 只看该作者
ubutu 发表于 2015-3-29 18:59
豹哥。。。我看了帮助文档,里面只有示波器的协议。。我主要是想知道摄像头组的协议。。

仔细看哦,有的,还分析了好多接收不到图像的原因。
回复 支持 反对

使用道具 举报

0

主题

4

帖子

0

精华

注册会员

Rank: 2

积分
78
威望
53
贡献
17
兑换币
23
注册时间
2015-3-21
在线时间
4 小时
毕业学校
沈阳
108#
发表于 2015-3-29 19:16:49 | 只看该作者
小豹 发表于 2015-3-29 13:22
打开软件,帮助文档里有的。

给你说说我的思路吧,我是想借用你的上位机软件把下位机里的灰度数据接收过来,并且实时显示出来,但现在就是卡在了这上位机数据接收这一块,数据没法往你的上位机里面走,我调了上位机上的帧头,然后用帮助里面的方法测试了,好像帧头对接收数据没有影响呀,还有一个比较奇怪的是70x51的图片为什么接收端显示接收了3572字节,多出两字节哪儿来的??或者豹哥给点建议呗
回复 支持 反对

使用道具 举报

0

主题

4

帖子

0

精华

注册会员

Rank: 2

积分
78
威望
53
贡献
17
兑换币
23
注册时间
2015-3-21
在线时间
4 小时
毕业学校
沈阳
107#
发表于 2015-3-29 18:59:17 | 只看该作者
小豹 发表于 2015-3-29 13:22
打开软件,帮助文档里有的。

豹哥。。。我看了帮助文档,里面只有示波器的协议。。我主要是想知道摄像头组的协议。。
回复 支持 反对

使用道具 举报

10

主题

150

帖子

0

精华

版主

Rank: 9Rank: 9Rank: 9

积分
4173

活跃会员奖章优秀会员奖章在线王奖章

QQ
威望
1826
贡献
1013
兑换币
564
注册时间
2012-3-1
在线时间
667 小时
106#
 楼主| 发表于 2015-3-29 13:22:51 | 只看该作者
ubutu 发表于 2015-3-29 12:50
请问一下这个上位机有什么通讯协议吗?

打开软件,帮助文档里有的。
回复 支持 反对

使用道具 举报

0

主题

4

帖子

0

精华

注册会员

Rank: 2

积分
78
威望
53
贡献
17
兑换币
23
注册时间
2015-3-21
在线时间
4 小时
毕业学校
沈阳
105#
发表于 2015-3-29 12:50:31 | 只看该作者
请问一下这个上位机有什么通讯协议吗?
回复 支持 反对

使用道具 举报

19

主题

411

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2926
威望
1594
贡献
68
兑换币
1062
注册时间
2014-6-4
在线时间
632 小时
104#
发表于 2015-3-26 11:27:28 | 只看该作者
豹哥,你好,最近在用上位机编写算法时候,有一些问题不懂,请教一下。我的目的是从一幅图像的中间开始向左查找左边黑线的右边缘。这是我的程序
  1.               //左边        int i,j,fazhi;
  2.         fazhi=100;
  3.         for(j=0;j<IMG_ROWS;j++){
  4.        for(i=IMG_COLS/2;i>0;i--)
  5.            {   
  6.                         if((ImageData[j][i/2]-ImageData[j][i/2-3]>fazhi)&&(ImageData[j][i/2-1]-ImageData[j][i/2-4]>fazhi)&&(ImageData[j][i/2-2]-ImageData[j][i/2-5]>fazhi))
  7.                         {ImageData[j][i-3]=128;}    //左边黑线的右边缘显示红色
  8.        
  9.            }
  10.         }
复制代码

感觉没有什么错,可是图像却是这样同时鼠标 指到红色地方时,显示值为255  ,可是看右边的数据却是128,不知道是哪里出错了,
发现上位机上面的那个“边缘提取”挺好的,不知道豹哥有没有源程序?谢谢


补充内容 (2015-3-26 16:24):
找到原因了,因为手误,多除了一个2,谢谢豹哥的上位机

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-9-27 19:13 , Processed in 0.175881 second(s), 31 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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