|
今天早上有一个网友(已加了我的QQ)来问我关于电机驱动的问题,他的硬件是照搬我在网上公布的电路,驱动自己写的,现在电机跑起来有问题,于是就找我。一下是我们今天的聊天记录:
LUCKY 09:39:14
您好
陈哥
/wx星魂 09:40:09
你好
LUCKY 09:40:32
我用L6205驱动电机有点问题
LUCKY 09:40:44
能帮我分析下嘛
LUCKY 09:40:57
电路的话是参考你网上发表的了
/wx星魂 09:41:14
那就是程序上处理有问题了
LUCKY 09:41:34
现在程序上真搞不懂要怎么弄而来
LUCKY 09:41:54
现在是在换相的时候停顿
LUCKY 09:42:06
就是一走一停这样子走
/wx星魂 09:42:18
程序问题
LUCKY 09:42:18
走一怕停一下
LUCKY 09:42:26
走一拍停一下
LUCKY 09:42:46
一整步就停了4次了
LUCKY 09:42:59
这个要怎么改呢?
LUCKY 09:43:02
忘能指教
/wx星魂 09:43:21
这个你要先去看看资料再说
LUCKY 09:43:43
看6205资料?
/wx星魂 09:44:00
再还没弄懂L6205的工作原理前贸贸然用是不理智的
LUCKY 09:44:11
这个是有关什么参数导致的呢?
LUCKY 09:44:31
应该不是相序的问题的吧?
LUCKY 09:44:53
快速的时候是正常了
LUCKY 09:45:08
就慢点速度就一走一停的
/wx星魂 09:45:27
你把程序和原理图发给我看看
LUCKY 09:45:59
原理图按照你那个做的了
LUCKY 09:46:11
不过我PWM接法改了下
LUCKY 09:46:31
有个不明白的地方想问下你
LUCKY 09:47:31
就是你图上的是两路PWM直接接A桥
然后两路反向接B桥
LUCKY 09:48:34
如果我这样子接
一路PWM直接接A桥的1N1a
然后反向接A桥的1N1b这样子行吧?
/wx星魂 09:50:43
本来就是要这样子接的
LUCKY 09:51:07
按照我的接法是不是错了呢?
/wx星魂 09:54:33
首先第一点要说的就是:
void motor_ABCD(void) 实体函数你竟然把他定义在头文件里?
/wx星魂 09:57:34
你的驱动程序相位错了
/wx星魂 09:59:05
你这种驱动程序是很垃圾的
/wx星魂 09:59:31
肯定问题多,就算没问题效果也是很差的
/wx星魂 09:59:53
一看就是网上搬来的
LUCKY 10:00:00
是呀
LUCKY 10:00:06
肯定是网上的了
LUCKY 10:00:54
相位的话我是按照那个电流合成的来做了
/wx星魂 10:01:35
是相差90°而不是180°
LUCKY 10:02:02
B正升A正降
B正降A反升
B反升A反降
B反降A正升
/wx星魂 10:02:20
你自己再去想想吧
LUCKY 10:02:20
我是按照这样子的了
LUCKY 10:02:38
我想这个是90的吧?
/wx星魂 10:02:40
照搬照抄的做不出好东西来的
LUCKY 10:02:49
一直都是这样认为
LUCKY 10:02:53
我得看下了
LUCKY 10:05:08
这个也都是
LUCKY 10:05:24
不知道我的程序怎么成了180°相位了
/wx星魂 10:05:52
你自己想想
/wx星魂 10:05:59
我已经跟你提示了
LUCKY 10:06:34
行的
谢谢了
LUCKY 10:06:42
我再想想看
LUCKY 10:06:59
真搞不懂这个相位了
LUCKY 10:08:40
对了
能指教一下实体函数定义在头文件有什么不好的嘛?
LUCKY 10:08:55
我之前只是考虑方便调试了
LUCKY 10:21:42
你那有没有摇头灯的程序的呀?
/wx星魂 10:21:43
您好,我现在有事不在,一会再和您联系。
LUCKY 10:21:46
能卖的
/wx星魂 10:21:47
您好,我现在有事不在,一会再和您联系。
/wx星魂 11:17:29
有啊
LUCKY 11:39:22
那你能给的嘛?
LUCKY 11:39:31
要好的
/wx星魂 11:39:54
你们公司要买的?
LUCKY 11:40:14
是的
/wx星魂 11:41:00
需要什么?
/wx星魂 11:41:09
你不是自己在做吗?
/wx星魂 11:41:17
怎么想跟我买了?
LUCKY 11:41:42
你又不指教
那调不出我只能买啦
/wx星魂 11:41:58
是你自己想买?
LUCKY 11:42:08
是呀
LUCKY 11:42:12
我自己买
/wx星魂 11:42:50
你出得起?
LUCKY 11:43:02
我怎么看我的程序就是按照这样子走的了
/wx星魂 11:43:02
你能出得起多少钱?
LUCKY 11:43:15
搞不懂到底怎么出的错
LUCKY 11:43:32
为达目的也都没办法呀
LUCKY 11:43:51
网上的资源又太少
/wx星魂 11:43:52
我一般是不买给个人的
LUCKY 11:44:02
那公司呢?
LUCKY 11:44:11
你是觉得卖给个人低价?
/wx星魂 11:44:35
是的
/wx星魂 11:44:55
你能自己掏个几千块钱买个程序?
LUCKY 11:44:56
那我们公司也都买的啦
/wx星魂 11:45:04
那样你很不值得
LUCKY 11:45:18
B正升A正降
B正降A反升
B反升A反降
B反降A正升
LUCKY 11:45:26
像这样子走的话
LUCKY 11:45:38
不是跟图上的相位一样的嘛
/wx星魂 11:46:04
我提示你的只能到这里了,其他的都得你自己去解决
LUCKY 11:46:38
哎
LUCKY 11:46:43
/wx星魂 11:47:27
你要很明白一点:出来社会工作没有哪个人有义务来帮你或者教你
/wx星魂 11:47:47
即使是你公司的师傅或者谁都没那个义务
LUCKY 11:47:53
是呀
/wx星魂 11:48:09
人家肯免费指点你那是你的造化
/wx星魂 11:48:21
人家不肯理你也是你的造化
LUCKY 11:48:22
中国就因为这个发展慢的嘛
/wx星魂 11:49:03
你也是那样想,不能什么事都要靠别人去指点
LUCKY 11:49:06
我遇到的一个工程师人家就很好
/wx星魂 11:49:11
要靠自己去摸索
LUCKY 11:49:35
人家是有什么不懂的都很虚心请教别人
LUCKY 11:49:49
然后自己懂的也很乐意教人家的呢
LUCKY 11:49:57
而且是主动的教
/wx星魂 11:49:58
那你可以再去请教他嘛
LUCKY 11:50:18
所以我就觉得他才是个合格的工程师
LUCKY 11:50:28
他是搞结构的了
LUCKY 11:50:38
行业都不一样了
/wx星魂 11:50:50
你还是很天真
/wx星魂 11:51:02
合格不合格不是由你说了算的
LUCKY 11:51:05
哈哈
/wx星魂 11:51:14
人家教了你你就说是合格
LUCKY 11:51:18
在我心目中的合格嘛
/wx星魂 11:51:28
人家不教的话就是不合格
/wx星魂 11:51:32
哈哈,好笑
LUCKY 11:51:37
人家在他那行业也很厉害的呀
/wx星魂 11:51:48
你以为你还是学校里啊?
/wx星魂 11:52:48
我们的聊天就到此为止
如果你想用这种方式来达到你的目的话那你就想错了
/wx星魂 11:53:08
我也不会卖程序给个人
LUCKY 11:53:09
哈哈
/wx星魂 11:53:15
公司我也不买
LUCKY 11:53:19
我也不会要达到什么目的
LUCKY 11:53:39
只是觉得这个社会好人越来越少了
/wx星魂 11:53:52
如果我很保守的话我就不会把资料放在网上
LUCKY 11:53:56
雷锋精神只是理论的雷锋了
/wx星魂 11:54:15
可以了,你就继续埋怨下去吧
/wx星魂 11:54:19
我没空理你
LUCKY 11:54:21
那我可以表扬你这一面
/wx星魂 11:54:24
你还很天真
LUCKY 11:54:33
不是天真
/wx星魂 11:54:36
不用你来表扬我
LUCKY 11:54:37
是无奈
/wx星魂 11:54:57
无奈是自己没那个能力搞好
/wx星魂 11:55:03
不能怪别人
/wx星魂 11:55:13
难道个个出来都有人教?
/wx星魂 11:55:25
难道每个工程师都有师傅带?
LUCKY 11:56:03
哈哈
LUCKY 11:56:12
能力是锻炼出来的
/wx星魂 11:56:16
像你这种遇到问题不先去找问题点的人我是不会去理的
LUCKY 11:56:25
能力是要互相学习的
/wx星魂 11:56:42
更不会去帮那些伸手的人
LUCKY 11:56:47
自己搞的话你能造出个飞机的嘛?
LUCKY 11:56:58
我不会伸手
LUCKY 11:57:05
我要的是探讨
/wx星魂 11:57:06
所以说你说话很不靠谱
LUCKY 11:57:11
都不探讨
LUCKY 11:57:20
你就能自己搞出东西
LUCKY 11:57:29
那算你是外星人
LUCKY 11:57:46
谁不靠谱自己清楚
/wx星魂 11:57:56
我想我没必要再跟你谈下去
/wx星魂 11:58:08
请你自觉点退出我的QQ
LUCKY 11:58:13
我只是看不贯某些人
LUCKY 11:58:25
不用你教
/wx星魂 11:58:38
你这种人我就觉得好笑
/wx星魂 11:58:56
你要是一直用这种心态去搞技术我很怀疑
LUCKY 11:59:05
你这种人我也觉得好笑
/wx星魂 11:59:09
请你退出我的QQ,谢谢
LUCKY 11:59:09
虚伪
LUCKY 11:59:17
装什么大侠罗
LUCKY 11:59:22
大便的图片(显示不出来)
/wx星魂 11:59:37
你狠丑陋
/wx星魂 11:59:54
拿了我的东西照搬,然后出了问题就来找我
/wx星魂 12:00:11
我都提示到那种地步了,程序也帮你看了
/wx星魂 12:00:19
你还不自己去想想
/wx星魂 12:00:34
你真的是很丑陋
/wx星魂 12:00:53
你不觉得你这种行为很卑鄙吗?
/wx星魂 12:01:14
照搬我的东西还再这里骂我?
////////////////////////////////////////////////////////////////////////////////////
我想说的是:像他这样的人,别人都已经帮他指点了还不自己动手去调试问题所在?更离谱的是,为了达到目的骗我要跟我买程序,被我识破后就翻脸不认人说一些不好听的话。我只能说遇到这样搞技术的人我很无语。
以下是他发给我要我帮他看的程序:
#ifndef __motor_ABCD_H__
#define __motor_ABCD_H__
uchar code motor64[]={
63, 63, 63, 62, 62, 61, 61, 61, 60, 60, 59, 59, 58, 58, 57, 56,
55, 55, 54, 53, 53, 52, 51, 50, 49, 48, 47, 46, 45, 45, 44, 43,
42, 41, 39, 38, 37, 36, 35, 34, 32, 31, 30, 29, 28, 26, 24, 23,
22, 21, 19, 18, 16, 15, 13, 12, 11, 9, 7, 6, 4, 3, 1, 0,
};
/***************************************************************************************/
void motor_ABCD(void)
{
/****************************************************************************************/
if(!motor_C_R)
{
switch(task)
{
case 0:
{
PWMB = 128-motor64[M_NUMB];
PWMA = 128-motor64[M_NUMA];
M_NUMB --; //B正升A正降
M_NUMA ++;
if(M_NUMB == 255){task++;M_NUMA = 63;M_NUMB = 0;PCA_PWM1 = 0X01;}
}
break;
case 1:
{
PWMB = 128-motor64[M_NUMB];
PWMA = 128+motor64[M_NUMA];
M_NUMB ++; //B正降A反升
M_NUMA --;
if(M_NUMB == 64){task++;M_NUMA = 0;M_NUMB = 63;PCA_PWM0 = 0X01;}
}
break;
case 2:
{
PWMB = 128+motor64[M_NUMB];
PWMA = 128+motor64[M_NUMA];
M_NUMB --; //B反升A反降
M_NUMA ++;
if(M_NUMB == 255){task++;M_NUMA = 63;M_NUMB = 0;PCA_PWM1 = 0X01;}
}
break;
case 3:
{
PWMB = 128+motor64[M_NUMB];
PWMA = 128-motor64[M_NUMA];
M_NUMB ++;
M_NUMA --; //B反降A正升
if(M_NUMB == 64){task++;M_NUMA = 0;M_NUMB = 63;PCA_PWM0 = 0X01;TESTNUM++;}
}
break;
default:task=0; break;
}
if(task>3)
{
task = 0;
if((++motor_steptimer) >= M_step)
{
motor_steptimer = 0;
motor_jiajiansu = 0;
MOTOR_OVERstep_flag = 0;
TR1 = 0;
}
}
}
/*******************************************************************************************/
if(PWMA == 255)
PCA_PWM0 = 0X02;
else
PCA_PWM0 = 0X00;
if(PWMB == 255)
PCA_PWM1 = 0X02;
else
PCA_PWM1 = 0X00;
}
#endif
(原文件名:搬我的驱动电路.jpg) |
|