当前位置: 首页 > news >正文

阳信做网站网络推广优化方案

阳信做网站,网络推广优化方案,2020网络公司排名,怎么做网站的推广一.接线、原理参考 共阴极接法 原理篇 arduino控制步进电机接线 https://blog.csdn.net/RickyWasYoung/article/details/132301936?spm1001.2014.3001.5501 接线篇 arduino控制步进电机接线控制[2] https://blog.csdn.net/RickyWasYoung/article/details/132405984?spm100…

一.接线、原理参考

共阴极接法

原理篇
arduino控制步进电机接线
https://blog.csdn.net/RickyWasYoung/article/details/132301936?spm=1001.2014.3001.5501

接线篇
arduino控制步进电机接线+控制[2]
https://blog.csdn.net/RickyWasYoung/article/details/132405984?spm=1001.2014.3001.5501

二.电机参数

2.1参数示意图

在这里插入图片描述在这里插入图片描述
图注

1.脉冲pps指每秒的脉冲数

2.线速度越大,力矩特性越小。但是小电流难以支持快速度(电流小难以克服电机内阻)

3.单个脉冲间隔时长=1(秒)/脉冲频率(pps)=1000,000(微秒)/脉冲频率(pps)。

单个脉冲间隔时长/2是HIGH/LOW电位delay时长(即单个脉冲间隔时间=电位供电时间*2)

4.个人测试,1.0A下,电机脉冲间隔时间=100微秒(即HIGH/LOW电位delay时长=50微秒)可行,对应线速度254mm/s

2.2额外参数计算

360/步距角=360/1.8=200
即正常情况(不细分情况)下,转一圈需要200步

因此当TB6600设置细分数为200时,电机步数没有被细分

有效行程/整步步长=25.40/0.0254=1000
即有效行程在不细分的条件下对应1000步,也就是转5圈

三.代码,能用

注意:此电机正转时推杆缩回,逆转时伸出

由于步进电缸/电推杆有限位作用(推杆伸到头之后电机空转,此时电机会产生强烈的振动),导致步进电缸/电推杆不能像普通的旋转式步进电机可以一直转下去。

因此步进电缸/电推杆在没有限位传感器/计数传感器的条件下,想精确定位很困难,需要先转到头(让推杆缩/伸到末端)再进行控制,因此提供以下代码,使电机在初次运行时两个方向各转1001步(前提是无细分,即TB6600细分数为200,细分条件下需要乘以细分倍数,即细分数/200*1000)

3.0. 代码零:测试代码,无循环,使电机伸到最末端(定位到最末端)

然后静止

注意,代码里digitalWrite(STEPPIN, HIGH/LOW);后面的delayMicroseconds()影响了电机旋转的角速度,也影响了推杆伸缩的线速度

脉冲总数影响推杆伸缩总距离

脉冲频率影响推杆伸缩速度

删除第三段(//3.正转500步归中归中)即可定位到伸长最末端

#define STEPPIN 9 //脉冲位为9
#define DIRPIN 8 //方向位为8
#define bushu 300 //循环时的脉冲步数void setup() {pinMode(STEPPIN, OUTPUT);pinMode(DIRPIN, OUTPUT);Serial.begin(9600);//不论电机初始位置如何,使电机超量程运动,以达到复位效果
//1.正转1001步Serial.println("Forward Begins");//串口监视器输出引号内容digitalWrite(DIRPIN, HIGH);//方向引脚高电位,正转// 正向转(1001步)for (int x = 0; x < 1001; x ++) {digitalWrite(STEPPIN, HIGH);delayMicroseconds(500);//Microseconds是微秒digitalWrite(STEPPIN, LOW);delayMicroseconds(500);//Microseconds是微秒}Serial.println("Forward Ends");//串口监视器输出引号内容delay(1000); // 暂停1秒//2.逆转1001步 Serial.println("Backward Begins");//串口监视器输出引号内容digitalWrite(DIRPIN, LOW);//方向引脚低电位,逆转// 反向转(bushu脉冲)for (int x = 0; x < 1001; x ++) {digitalWrite(STEPPIN, HIGH);delayMicroseconds(500);//Microseconds是微秒digitalWrite(STEPPIN, LOW);delayMicroseconds(500);//Microseconds是微秒}Serial.println("Backward Ends");//串口监视器输出引号内容delay(1000); //暂停1秒//3.正转500步归中归中归中归中归中归中归中归中归中归中归中归中Serial.println("Forward Begins");//串口监视器输出引号内容digitalWrite(DIRPIN, HIGH);//方向引脚高电位,正转// 正向转(500步)for (int x = 0; x < 500; x ++) {digitalWrite(STEPPIN, HIGH);delayMicroseconds(500);digitalWrite(STEPPIN, LOW);delayMicroseconds(500);}Serial.println("Forward Ends");//串口监视器输出引号内容delay(1000); // 暂停1秒
}//循环 
void loop() {}

3.1. 代码一:使电机伸到最末端(定位到最末端)

然后以1000步缩-伸-缩-伸-…循环

#define STEPPIN 9 //脉冲位为9
#define DIRPIN 8 //方向位为8
#define bushu 1000 //循环时的脉冲步数void setup() {pinMode(STEPPIN, OUTPUT);pinMode(DIRPIN, OUTPUT);Serial.begin(9600);//不论电机初始位置如何,使电机超量程运动,以达到复位效果
//1.正转1001步Serial.println("Forward Begins");//串口监视器输出Forward BeginsdigitalWrite(DIRPIN, HIGH);//方向引脚高电位,正转// 正向转(1001步)for (int x = 0; x < 1001; x ++) {digitalWrite(STEPPIN, HIGH);delayMicroseconds(500);//Microseconds是微秒digitalWrite(STEPPIN, LOW);delayMicroseconds(500);//Microseconds是微秒}Serial.println("Forward Ends");//串口监视器输出Forward Endsdelay(1000); // 暂停1秒//2.逆转1001步 Serial.println("Backward Begins");//串口监视器输出Backward BeginsdigitalWrite(DIRPIN, LOW);//方向引脚低电位,逆转// 反向转(bushu脉冲)for (int x = 0; x < 1001; x ++) {digitalWrite(STEPPIN, HIGH);delayMicroseconds(500);digitalWrite(STEPPIN, LOW);delayMicroseconds(500);}Serial.println("Backward Ends");//串口监视器输出Backward Endsdelay(1000); //暂停1秒
}//循环 
void loop() {
//1.正转//使电机向特定方向运动Serial.println("Forward Begins");//串口监视器输出引号内容digitalWrite(DIRPIN, HIGH);//方向引脚高电位,正转// 正向转(bushu脉冲)for (int x = 0; x < bushu; x ++) {digitalWrite(STEPPIN, HIGH);delayMicroseconds(500);digitalWrite(STEPPIN, LOW);delayMicroseconds(500);}Serial.println("Forward Ends");//串口监视器输出引号内容delay(1000); // 暂停一秒//2.逆转 //使电机向反方向运动Serial.println("Backward Begins");//串口监视器输出引号内容digitalWrite(DIRPIN, LOW);//方向引脚低电位,逆转// 反向转(bushu脉冲)for (int x = 0; x < bushu; x ++) {digitalWrite(STEPPIN, HIGH);delayMicroseconds(500);digitalWrite(STEPPIN, LOW);delayMicroseconds(500);}Serial.println("Backward Ends");//串口监视器输出引号内容delay(1000); //暂停一秒
}

3.2. 代码二:使电机伸到最末端后缩500步(定位到中间)

然后以300步缩-伸-缩-伸-…循环

#define STEPPIN 9 //脉冲位为9
#define DIRPIN 8 //方向位为8
#define bushu 300 //循环时的脉冲步数void setup() {pinMode(STEPPIN, OUTPUT);pinMode(DIRPIN, OUTPUT);Serial.begin(9600);//不论电机初始位置如何,使电机超量程运动,以达到复位效果
//1.正转1001步Serial.println("Forward Begins");//串口监视器输出引号内容digitalWrite(DIRPIN, HIGH);//方向引脚高电位,正转// 正向转(1001步)for (int x = 0; x < 1001; x ++) {digitalWrite(STEPPIN, HIGH);delayMicroseconds(500);//Microseconds是微秒digitalWrite(STEPPIN, LOW);delayMicroseconds(500);//Microseconds是微秒}Serial.println("Forward Ends");//串口监视器输出引号内容delay(1000); // 暂停1秒//2.逆转1001步 Serial.println("Backward Begins");//串口监视器输出引号内容digitalWrite(DIRPIN, LOW);//方向引脚低电位,逆转// 反向转(bushu脉冲)for (int x = 0; x < 1001; x ++) {digitalWrite(STEPPIN, HIGH);delayMicroseconds(500);//Microseconds是微秒digitalWrite(STEPPIN, LOW);delayMicroseconds(500);//Microseconds是微秒}Serial.println("Backward Ends");//串口监视器输出引号内容delay(1000); //暂停1秒//3.正转500步归中归中归中归中归中归中归中归中归中归中归中归中Serial.println("Forward Begins");//串口监视器输出引号内容digitalWrite(DIRPIN, HIGH);//方向引脚高电位,正转// 正向转(500步)for (int x = 0; x < 500; x ++) {digitalWrite(STEPPIN, HIGH);delayMicroseconds(500);digitalWrite(STEPPIN, LOW);delayMicroseconds(500);}Serial.println("Forward Ends");//串口监视器输出引号内容delay(1000); // 暂停1秒
}//循环 
void loop() {
//1.正转//使电机向特定方向运动Serial.println("Forward Begins");//串口监视器输出引号内容digitalWrite(DIRPIN, HIGH);//方向引脚高电位,正转// 正向转(bushu脉冲)for (int x = 0; x < bushu; x ++) {digitalWrite(STEPPIN, HIGH);delayMicroseconds(500);digitalWrite(STEPPIN, LOW);delayMicroseconds(500);}Serial.println("Forward Ends");//串口监视器输出引号内容delay(1000); // 暂停一秒//2.逆转 //使电机向反方向运动Serial.println("Backward Begins");//串口监视器输出引号内容digitalWrite(DIRPIN, LOW);//方向引脚低电位,逆转// 反向转(bushu脉冲)for (int x = 0; x < bushu; x ++) {digitalWrite(STEPPIN, HIGH);delayMicroseconds(500);digitalWrite(STEPPIN, LOW);delayMicroseconds(500);}Serial.println("Backward Ends");//串口监视器输出引号内容delay(1000); //暂停一秒
}

串口监视器显示:
在这里插入图片描述

参考:

1.步进电机转速和方向控制
https://blog.csdn.net/hhaowang/article/details/86359014?spm=1001.2014.3001.5506

http://www.mmbaike.com/news/73056.html

相关文章:

  • 网站子栏目设计建一个外贸独立站大约多少钱
  • 新加坡 网站建设搭建网站需要什么技术
  • 扬州有做义工的地方或网站嘛国外b站不收费免费2023
  • 自己做网站最新视频教程说说seo论坛
  • 怎么做北京pk10的网站无人区在线观看高清1080
  • wordpress插件文件不存在图片优化是什么意思
  • 两学一做网站源码长沙seo优化排名
  • 手机作网站服务器百度账号管理中心
  • 做网站app 需要多少钱怎么下载有风险的软件
  • 邢台建手机网站流程网络推广网络营销和网站推广的区别
  • 做商城网站报价鸣蝉智能建站
  • 默认的首页文件名一般是企业网站的搜索引擎推广与优化
  • 哈尔滨百度优化免费的seo教程
  • 华宇网站建设百度商城app下载
  • 美丽寮步网站建设哪家好网络违法犯罪举报网站
  • 网页编辑公众号夫唯seo教程
  • wordpress在哪里设置编辑器百度搜索结果优化
  • 易语言怎么做ifa网站填表地方网站建设
  • 漯河 网站建设成都纯手工seo
  • 做网站网镇江网络
  • python可以做动态网站吗网络营销课程实训总结
  • 天动力网站开发网络营销成功案例
  • 做贸易网站360seo排名点击软件
  • 仿牌网站除了91还有什么关键词
  • 网站关键词优化怎么做的百度网页版怎么切换
  • 免费前端模板网站个人建网站步骤
  • 邢台哪个公司做网站网站内部seo优化包括
  • wordpress 弹出视频seo优化工具大全
  • 自己做网站想更换网址品牌营销策划方案
  • 镇江网站营销推广百度正版下载并安装