博客首页 | 排行榜 |

collus

个人档案
博文分类
LegoBlaze_version1.0  2009-11-26 17:06

最近一直都在整理LegoBlaze的设计,现在终于挂到网页上了。下面附上LegoBlaze的 简介:

该项目来自于Lego最新型的Mindstorms NXT机器人创意。最终目的是在XilinxSpartan3E系列的FPGA上开发出一个机器人控制平台,能够提供各种传感器接口,电机控制接口和通讯接口,以提供给机器人爱好者进行各种机器人的开发。该项目的设计环境:

硬件:Spartan3E Starter Kit

      LegoBlaze

      NXT motor

      电缆

      RS232 串口线

软件:EDK10.1.03

      超级终端/串口调试

自从接手LegoBlaze这个项目也有不少时间了,自己也做了一些设计,却一直没有整理出来制定一个版本跟大家一起分享。最近才安排时间对已有的感觉还可以的设计整理出来,跟大家相互交流,同时也回报一下那些一直关心Lego设计的朋友。这次只是整理了三个有关电机的基础设计,包括电机的转动,测速以及电机与触碰传感器相互结合的一个设计。我将这三个设计命名为:Motor_runMotor_velocity以及Motor_touch。在发布新版本的时候,我同时附带了设计的复现过程,测试者只要根据相应的步骤描述就能很容易的实现设计的再现。最新版本的源码和设计的复现步骤描述可以通过下面的链接获取:

源码和设计(请点击下载)

注:1. 点击后会出现一个下载法律声明,需要你点击同意后才能下载。该数据包中含有下面介绍的所有内容。

2. 我在下面介绍各个工程时,所附加的各个连接是各个工程在SVN上放置的位置,大家可以针对各自感兴趣的工程下载所需要的数据内容。不过这个要先加入该项目组后,才能下载。

 

另外,大家也可从我的博客上看到一些有关LegoBlaze设计的照片。通过点击:

http://www.openhw.org/collus/album/下的LegoBlaze标签,就能看到了。

下面就简单的介绍一下这三个设计的功能:

l       Motor_run这个设计中使用了两个拨动开关来控制电机的启动、停止以及转动方向。

   sw3 : run/stop(1: run; 0: stop);

   sw2 : direction(1: running front; 0: running back);

下载地址:https://dev.openhw.org/svn/LegoBlaze/tags/LegoBlaze_version1.0/


视频:


注:该设计主要是能将电机驱动起来,通过PWM控制步进电机的转动速度。

l       Motor_velocity这个设计中使用开发板上的四个拨动开关,分为两组:一组是来控制电机的启动、停止和转动方向的;另一组是用来控制测速和测速后将寄存器清零的。

   sw3 : run/stop(1: run; 0: stop);

   sw2 : direction(1: running front; 0: running back);

   sw1 : clc ( set all the registers to zero);

   sw0 : speed( 1: start to test speed; 0: testing speed is over)

下载地址:https://dev.openhw.org/svn/LegoBlaze/tags/LegoBlaze_version1.0/


视频:


注:本设计中涉及到浮点数的运算,本人尝试了一些方法来解决这个问题可就是没有成功。单独的赋值于AB两个变量,做浮点除法运算可以实现,当是就是没有能加到设计中来。希望大家给些建议,如何能实现从采样端得到的数据,来做浮点运算。我是将的得到的数据Xunit32类型,赋值给float类型的变量,再进行浮点运算。

l       Motor_touch这个设计中只用到了一个拨动开关来控制电机的启动、停止。当电机开始转动后,你记录它的转动方向,然后按下触碰开关并立即放开,再观察电机的转动方向,你会发现前后两次的方向是相反的。

   sw3 : run/stop(1: run; 0: stop)

下载地址:https://dev.openhw.org/svn/LegoBlaze/tags/LegoBlaze_version1.0/

视频:

注:该设计中用到了ADC模数转换,同时添加了GPIO来连接ADC输入。在设计中发现,如果没有GPIO,输入的信号转成数字信号后无法区分出来电压之间的变化。各位也想想,为什么要加GPIO,我们相互交流一下。

 

最后附上我的联系方式:

zcsh431215@gmail.com

 

大家来点评一下,有什么建议和想法都提出来交流,期待大家的留言和email。

 点击:www.openhw.com/project/index_view_242.html

 进入LegoBlaze项目界面

 

类别:转载 |
上一篇:DCM在Digilent Basys中的使用 | 下一篇:OpenHw上如何进行SVN项目管理
以下网友评论只代表其个人观点,不代表本网站的观点或立场