新闻中心

EEPW首页>嵌入式系统>设计应用> 激光制导自动跟踪焊接系统

激光制导自动跟踪焊接系统

作者: 时间:2010-08-09 来源:电子产品世界 收藏

  图像采集

本文引用地址://m.amcfsurvey.com/article/111530.htm

  摄像头通过通用输入输出端口连接至TC1797,以连接数据和控制并行总线。全局计时器0(GT0)和全局计时器单元0(GTC0)用于生成摄像头主时钟脉冲,以控制摄像头帧速率。

  TriCore TC1797的通用输入输出端口可支持的数据率约为296kHz,这表示100×100像素图像的理想帧速率为29.6fps(1字节/像素)。图像应保存在一个10 Kb的阵列中。平均而言,采集图像耗时约200毫秒。

  采用大津方法处理图像

  采用大津阈值法来处理所采集的图像,以自动计算出在变化不定的照明条件下的最优阈值。利用大津方法,我们尽一切可能找到能最大限度地降低类内方差值(即,两个类的方差的加权总和)的阈值:

  权数ωi是被阈值t分隔开的两个类的概率,是这两个类的方差。

  大津法表明,最大限度地降低类内方差值,等同于最大限度地提高类间方差值:

  其中,ωi是类概率,μi是类平均数,相应地,这个值可以迭代更新。这种方法产生了一个简单而又有效的算法:

  1. 计算各个亮度条件下的直方图和概率

  2. 设置初始ωi(0)和μi(0)

  3. 逐一计算所有可能的阈值t = 1 … 最高亮度

  1. 更新ωi和μi

  2. 计算

4. 对应于最大的理想阈值。

  采用上述算法,处理所保存的图像。经处理的图像将保存到另一个10 Kb阵列中。确定最优阈值后,计算出中线(单像素宽线)。下一步是从中线中找到结合点。由此得到的坐标值将被输出至先入先出堆栈。处理每帧图像的平均用时约为65毫秒。

  处理前

  处理后

  先入先出缓冲区

  利用先入先出循环缓冲区来保存图像处理模块计算得到的坐标值。然后,伺服电机模块将利用这些坐标值来将焊枪移动至相应的位置。摄像头的初始坐标值是0,而焊枪的初始坐标值则是CIRCULAR_BUF_SIZE-1。根据摄像头与焊枪之间的步数,在汇编时决定先入先出缓冲区的大小。

  伺服电机(焊枪移动Y和Z轴)

  利用GPTA0和GPTA1中的LTC,生成脉宽调制信号。利用两个HS-5645MG伺服电机来控制焊枪的水平(Y轴)和垂直(Z轴)移动。将根据先入先出缓冲区中保存的坐标值,计算出伺服电机需要移动的距离。

  根据先入先出缓冲区中保存的y坐标值,调节伺服电机0(水平方向)。伺服电机0的步数范围是-70至65(移动距离为63毫米)。伺服电机的步长精度为136/63 = 0.46毫米。负值表示朝靠近金属板方向移动,正值表示朝远离金属板方向移动。

  伺服电机1(垂直方向)的步数范围是-85至59(移动距离为67.5毫米)。伺服电机的步长精度为67.5/145 = 0.46毫米。负值表示焊枪向下移动,正值表示焊枪向上移动。



评论


相关推荐

技术专区

关闭