ImageVerifierCode 换一换
格式:DOCX , 页数:51 ,大小:306.78KB ,
资源ID:326849      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-326849.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(自动控制系统实验报告.docx)为本站会员(b****1)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

自动控制系统实验报告.docx

1、自动控制系统实验报告自动控制系统实验报告学号: 班级: 姓名:老师:1运动控制系统实验实验一.硬件电路的熟悉和控制原理复习巩固实验目的:综合了解运动控制实验仪器机械结构、各部分硬件电路以及控制原理,复习巩固以前课堂知识,为下阶段实习打好基础。实验内容:了解运动控制实验仪的几个基本电路:单片机控制电路(键盘显示电路最小应用系统、步进电机控制电路、光槽位置检测电路)ISA运动接口卡原理(搞清楚译码电路原理和ISA总线原理)步进电机驱动检测电路原理(高低压恒流斩波驱动电路原理、光槽位置检测电路)两轴运动十字工作台结构步进电机驱动技术(掌握步进电机三相六拍、三相三拍驱动方法。)微机接口技术、单片机原理

2、及接口技术,数控轮廓插补原理,计算机高级语言硬件编程等知识。实验结果:步进电机驱动技术:控制信号接口:(1)PUL:单脉冲控制方式时为脉冲控制信号,每当脉冲由低变高是电机走一步;双脉冲控制方式时为正转脉冲信号。(2)DIR:单脉冲控制方式时为方向控制信号,用于改变电机转向;双脉冲控制方式时为反转脉冲信号。(3)OPTO:为PUL、DIR、ENA 的共阳极端口。(4)ENA:使能/禁止信号,高电平使能,低电平时驱动器不能工作,电机处于自由状态。电流设定:(1)工作电流设定:(2)静止电流设定:静态电流可用SW4 拨码开关设定,off 表示静态电流设为动态电流的一半,on 表示静态电流与动态电流相

3、同。一般用途中应将SW4 设成off,使得电机和驱动器的发热减少,可靠性提高。脉冲串停止后约0.4 秒左右电流自动减至一半左右(实际值的60),发热量理论上减至36。(3)细分设定:(4)步进电机的转速与脉冲频率的关系电机转速v = 脉冲频率P * 电机固有步进角e / (360 * 细分数m)逐点比较法的直线插补和圆弧插补:1直线插补原理:如图所示的平面斜线AB,以斜线起点A的坐标为x0,y0,斜线AB的终点坐标为(xe,ye),则此直线方程为: 取判别函数F(YY0)(XeXo)(X-X0)(YeY0) 用逐点比较法加工时,每一次只在一个坐标方向给出一个脉冲,使运动件在该坐标方向上进给一步

4、,因此刀具的运动轨迹是折线,而不是斜线AB。折线拐点M与斜线AB之间的位置关系有如下三种情况:1)M点在AB线的上方判别函数F0;2)M点在AB线上,F=03)M点在AB线的下方,F000Ye-Y0000R,Ii2+Ji2R22) Mi在圆弧上,则0Mi=R,Ii2+Ji2=R23) Mi在圆弧内侧,0MiR,Ii2+Ji2R2 在第一象陨顺时针加工圆弧(顺圆弧)和第二、三、四象限加工顺圆弧和逆圆弧时,判别式都不相同。带符号运算时,无论在哪个象限工作,顺圆弧或逆圆弧,归纳起来有如下四种情1.+X方向走一步 Ii+1 Ii+1Fi+1 = Fi+2Ii+12.-X方向走一步 Ii+1 Ii-1F

5、i+1 = Fi-2Ii+13.+Y方向走一步Ji+1=Ji+1Fi+1 = Fi+2Ji+14.-Y方向走一步Ji+1=Ji+1Fi+1 = Fi+2Ji+1 四个象限进给方向 象限判断和电机转向第一象限第二象限第三象限第四象限Ii的符号+-+Ji的符号+-X向电机顺圆+-逆圆-+X向电机顺圆-+-逆圆+-+ 实验二.键盘显示综合实验实验目的:1、复习单片机键盘显示编制方法 2、为下步工作奠定基础实验内容:1、编制键盘扫描程序和数码管的静态显示程序 2、编制键盘数据输入程序 3、编制十进制到二进制转换程序 4、编制二进制到十进制转换程序 5、编写显示程序 6、编制功能键跳转程序 7、联机作总

6、体调试实验结果:#include /库文件#include #include #include sbit P32=P32;#define LEDLen 8 /六个八段管#define mode 0x81 /8255工作模式 /方式0,A口、B口及上C口作为输出,下C口作为输入#define LEDSEL P2#define LEDSEL_0 0x60 /八段管地址#define LEDSEL_1 0x64#define LEDSEL_2 0x68#define LEDSEL_3 0x6C#define LEDSEL_4 0x70#define LEDSEL_5 0x74#define LEDS

7、EL_6 0x78#define LEDSEL_7 0x7C#define uchar unsigned char#define uint unsigned int/code uchar hang = 0X01,0X02,0X04,0X08,0X10,0X20,0X40,0X80;code uchar lie8=0xFF,0x99,0x00,0x00,0x00,0x81,0xC3,0xE7, 0xFF,0xFF,0xDB,0x81,0x81,0xC3,0xE7,0xFF;#define Tick 200 #define T100us (256-200) unsigned int C100us

8、= Tick; / 200us记数单元unsigned char Bit = 0;unsigned char SelectLedLEDLen = LEDSEL_0, LEDSEL_1, LEDSEL_2, LEDSEL_3, LEDSEL_4, LEDSEL_5, LEDSEL_6, LEDSEL_7;xdata unsigned char CS8255 _at_ 0x60; /8255xdata unsigned char PA _at_ 0x6000; /8255的PA口xdata unsigned char PB _at_ 0x6001; /8255的PB口xdata unsigned

9、char PC _at_ 0x6002; /8255的PC口xdata unsigned char CTL _at_ 0x6003; /8255控制字地址unsigned char LEDBUFF8; code unsigned char KeyTable = /键值表 0x7E, 0xBE, 0xDE, 0xEE, 0x7D, 0xBD, 0xDD, 0xED, 0x7B, 0xBB, 0xDB, 0xEB, 0x77, 0xB7, 0xD7, 0xE7;code unsigned char SWEEP = /扫描信号 0x7f, 0xBf, 0xDF, 0xEF ;code unsigne

10、d char LEDMAP = /八段显示管键码 0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f, 0x6f, 0x77, 0x7c, 0x39, 0x5e, 0x79, 0x71;/延时void delay( unsigned int CNT ) unsigned char i; while ( CNT- != 0) for( i=100; i != 0; -i) ;unsigned char TestKey() unsigned char i, Temp; Temp = PC; /PC是变化的 i = Temp & 0x0f; re

11、turn i; unsigned char GetKey () unsigned char i, Num=16; if( TestKey() ) for(i=0; i16; i+) if( KeyTablei = PC ) /有键按下时 Num = i; /确定键值 do delay(200); /消除键抖动 while ( TestKey() ); / 等待按键松开 return Num; /返回键值 return Num; void DisplayResult(unsigned char Num) LEDBUFF7 = LEDMAP Num ;void DisplayLED() unsig

12、ned char i; for(i=0; i= x1) k = y2 = y1 ? 1: 4; x = x1; y = y1; else k = y2 = y1 ? 2: 3; x = x2; y = y2; for (i = 0, f = 0; i = 0) switch (k) case 1: f -= dy; PA = 0xff;delay(2); /X轴正转 PA = 0xfe;delay(2); break; case 2: f -= dx; PA = 0xff;delay(2); PA = 0xef;delay(2); /Y轴正转 break; case 3: f -= dy; P

13、A = 0xfd;delay(2); PA = 0xfc;delay(2); /X轴反转 break; case 4: f -= dx; PA = 0xdf;delay(2); PA = 0xcf;delay(2); /Y轴反转 break; else switch (k) case 1: f += dx; PA = 0xff;delay(2); PA = 0xef;delay(2); /Y轴正转 break; case 2: f += dy; PA = 0xfd;delay(2); PA = 0xfc;delay(2); /X轴反转 break; case 3: f += dx; PA =

14、0xdf;delay(2); PA = 0xcf;delay(2); /Y轴反转 break; case 4: f += dy; PA = 0xff;delay(2); /X轴正转 PA = 0xfe;delay(2); break; 实验四.步进电机单片机控制实验(2)实验目的:1、掌握运动控制系统常用控制方法 2、掌握直线的逐点比较插补方法实验内容:1、编制第一象限直线插补程序。 2、结合键盘显示程序,输入直线的终点坐标值Xe、Ye,按下直线键后进行插补运动,检验图纸上所走轨迹是否与设定直线相符合。 3、加入插补过程数据动态显示功能,插补过程中动态显示X、Y任意某轴坐标,或者总步数值。 4

15、、编制四象限直线插补程序。 5、编制一象限圆弧插补程序。实验结果:圆弧插补子程序:void circle(int x0,int y0,int xe,int ye) int xm,ym,rns; int nxy; int fm=0; xm=x0; ym=y0; nxy=abs(xe-xm)+abs(ye-ym); if(xexm) if(yeym) if(xm=0) rns=8; else rns=2; else if(xm=0) rns=1; else rns=7; else if(yeym) if(xe=0) rns=5; else rns=3; else if(xe=0) rns=4; e

16、lse rns=6; while(nxy-) if(fm=0) if(rns=1|rns=3|rns=6|rns=8) if(rns=1|rns=6) PA = 0xdf;delay(5); PA = 0xcf;delay(5);/-y else if(rns=3|rns=8) PA = 0xff;delay(5); PA = 0xef;delay(5);/+y fm=fm-2*abs(ym)+1; ym=abs(ym)-1; else if(rns=2|rns=4|rns=5|rns=7) if(rns=2|rns=7) PA = 0xff;delay(5);/+x PA = 0xfe;de

17、lay(5); else if(rns=4|rns=5) PA = 0xfd;delay(5);/-x PA = 0xfc;delay(5); fm=fm-2*abs(xm)+1; xm=abs(xm)-1; else if(rns=1|rns=3|rns=6|rns=8) if(rns=1|rns=8) PA = 0xff;delay(5);/+x PA = 0xfe;delay(5); else if(rns=3|rns=6) PA = 0xfd;delay(5);/-x PA = 0xfc;delay(5); fm=fm+2*abs(xm)+1; xm=abs(xm)+1; else i

18、f(rns=2|rns=4|rns=5|rns=7) if(rns=2|rns=5) PA = 0xff;delay(5);/+y PA = 0xef;delay(5); else if(rns=4|rns=7) PA = 0xdf;delay(5);/-y PA = 0xcf;delay(5); fm=fm+2*abs(ym)+1; ym=abs(ym)+1; 实验五.单片机控制位置检测实验实验目的:1、熟悉光电开关的用法 2、掌握一般运动控制系统中位置检测方法 3、掌握相应检测电路原理。实验内容:1、测试各个光电开关对应位2、编制运动中的检测程序实验六、单片机运动控制系统总体实验实验目的:

19、1、培养学生系统设计能力。 2、掌握一般系统功能模块集成方法和调试方法。 3、了解单片机应用系统从设计到应用实际操作流程。实验内容:1、由键盘显示程序将各个功能模块综合到一起。2、调试好程序后,烧入EPROM,脱机运行。实验总结:通过这次实验,复习了去年单片机实习的内容,巩固了对单片机各模块的编程操作,掌握了电机驱动器的工作原理和步进电机的工作方式等知识,在实习过程中,理论与实践相结合,加强了对理论知识的理解和掌握,和同学进行团队合作完成实验,也锻炼了我们的团队意识,为在以后的学习和工作能够更好地利用书本知识打下基础。在实验中,单片机控制位置检测实验这个部分完成地不是很好,需要在以后的学习中,

20、加强这方面知识的学习,使自己的实验结果更加完美。程序附录:#include /库文件#include #include #include #include #include sbit P32=P32;#define LEDLen 8 /六个八段管#define mode 0x81 /8255工作模式 /方式0,A口、B口及上C口作为输出,下C口作为输入#define LEDSEL P2#define LEDSEL_0 0x60 /八段管地址#define LEDSEL_1 0x64#define LEDSEL_2 0x68#define LEDSEL_3 0x6C#define LEDSEL_

21、4 0x70#define LEDSEL_5 0x74#define LEDSEL_6 0x78#define LEDSEL_7 0x7C #define uchar unsigned char#define uint unsigned int/code uchar hang = 0X01,0X02,0X04,0X08,0X10,0X20,0X40,0X80;code uchar lie8=0xFF,0x99,0x00,0x00,0x00,0x81,0xC3,0xE7, 0xFF,0xFF,0xDB,0x81,0x81,0xC3,0xE7,0xFF;#define Tick 200 #defi

22、ne T100us (256-200) unsigned int C100us = Tick; / 200us记数单元unsigned char Bit = 0;unsigned char SelectLedLEDLen = LEDSEL_0, LEDSEL_1, LEDSEL_2, LEDSEL_3, LEDSEL_4, LEDSEL_5, LEDSEL_6, LEDSEL_7;xdata unsigned char CS8255 _at_ 0x60; /8255xdata unsigned char PA _at_ 0x6000; /8255的PA口xdata unsigned char

23、PB _at_ 0x6001; /8255的PB口xdata unsigned char PC _at_ 0x6002; /8255的PC口xdata unsigned char CTL _at_ 0x6003; /8255控制字地址unsigned char LEDBUFF8; code unsigned char KeyTable = /键值表 0x7E, 0xBE, 0xDE, 0xEE, 0x7D, 0xBD, 0xDD, 0xED, 0x7B, 0xBB, 0xDB, 0xEB, 0x77, 0xB7, 0xD7, 0xE7;code unsigned char SWEEP = /扫描信号 0x7f, 0xBf, 0xDF, 0xEF ;code unsigned char LEDMAP = /八段显示管键码 0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f, 0x6f, 0x77, 0x7c, 0x39, 0x5e, 0x79, 0x71;void delay( unsigned int CNT ) unsigned char i; while ( CNT- != 0) for( i=10

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2