• 13回复贴,共1

大功率步进电机和接近传感器!顺便记录一下自己学到的经验。

只看楼主收藏回复

视频来自:百度贴吧


来自iPhone客户端1楼2017-06-20 19:44回复
    别沉,慢慢记录…


    来自iPhone客户端2楼2017-06-20 23:19
    回复
      2026-02-09 19:39:54
      广告
      不感兴趣
      开通SVIP免广告
      这是实际工况中用到的一个工程,传感器和电机都是朋友寄过来的:


      来自iPhone客户端3楼2017-06-20 23:26
      回复
        事先声明,不打广告,我已经把店铺名称都截掉了,留下的是型号,参数,吧务手下留情


        来自iPhone客户端4楼2017-06-20 23:29
        回复
          使用的单片机是at89c52,单片机供电是5v的,而接近传感器输出的是22V左右的高电平,会烧坏单片机。我使用7805和一个100欧左右的电阻串联在信号线和7805之间,使得输出在5V以内。我也试了别的电阻,最开始为以防万一接了4.2k欧的电阻,结果7805输出端电压为3.3v左右,单片机无法识别信号,所以使用时建议串联100欧左右的电阻


          来自iPhone客户端6楼2017-06-20 23:36
          回复
            7805最高输入电压为直流35V,我使用的电源为24V在范围内,但是最好不要直接将接近开关的信号线串在7805上,否则7805会很热,有可能会烧坏…


            来自iPhone客户端7楼2017-06-20 23:38
            回复
              电机和驱动器使用的是:


              来自iPhone客户端9楼2017-06-21 11:28
              回复
                这是型号,网上有很多


                来自iPhone客户端10楼2017-06-21 11:29
                回复
                  2026-02-09 19:33:54
                  广告
                  不感兴趣
                  开通SVIP免广告
                  这里驱动器的输入电压我选择的也是24V,电机的四根线直接接在驱动器的A+,A-;B+,B-;判断电机的那两根线是接在同一个象限的:将两根线短接,然后用手转动电机,如果电机比较难转动,那么这两根线是接在同一个象限的。


                  来自iPhone客户端11楼2017-06-21 20:12
                  回复
                    驱动器,理论上来说是可以有两种电路连接方式的,一种是共阳极,一种是共阴极,但是我在测试的时候发现共阴极是电机无法启动,不清楚理由,这个时候建议采用共阳极接法,将DIR,ENA和PUL的+断连接在一起然后接入单片机的Vcc端。


                    来自iPhone客户端12楼2017-06-21 20:15
                    回复
                      按照上面的建议连接硬件,硬件就应该没有什么问题了,剩下就是软件编程。在这次编程的过程中我学到了很多,第一次编程的时候用的是1602LCD,和28BYJ-48步进电机,这两个都比较容易,也就用了两天的时间编程完事了。然而在做这个备案的时候,自己确实学了不少东西啊


                      来自iPhone客户端13楼2017-06-21 23:58
                      回复
                        keil使用的是uv4之前没有破解,程序存储Rom最多能放3300左右bit,再多程序就会提示错误,要解决这个错误可以通过更改自己定义的全局变量的个数活着破解软件,可以到网上搜索“Uv4破解软件”很容易找到,然后按照提示的内容破解软件,这样你就可以放心的使用Rom了


                        来自iPhone客户端14楼2017-06-22 00:01
                        回复
                          因为12864需要显示很多数组,会占用ram空间,这个时候可以考虑将不变的数组加上code,比如char code test【】=“测试速度”,这样会节省ram空间;对于多次调用的函数,但是函数中的变量只需要赋值一次的,可以使用static,静态变量标志符,这样就会使变量被赋值一次,不影响下面的使用。


                          来自iPhone客户端15楼2017-06-22 10:26
                          回复
                            extern使用,第一次使用extern时以为会讲extern声明的变量定义为整个工程都认可的全局变量,但是不是,extern只是起到了声明的作用,而且在声名时,赋值为第一次定义时的值,也就是说在别的.c文件中修改变量,在另外一个.c文件中声明后,变量不会变为更改后的数值,这一点需要谨记,要不然就会造成错误


                            来自iPhone客户端16楼2017-06-22 13:46
                            回复