欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    计算机控制系列实验报告.docx

    • 资源ID:9975785       资源大小:687.31KB        全文页数:30页
    • 资源格式: DOCX        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    计算机控制系列实验报告.docx

    1、计算机控制系列实验报告实验一 小功率随动系统的元部件测试与建模一、实验目的了解小功率随动系统元部件的基本原理及输入/输出特性;掌握测量仪器的使用方法和元部件的测试方法;学习数据处理和利用工程方法建立被控对象的数学模型的基本方法; 了解元部件的非线性因素及模型误差产生的原因等;了解最小二乘拟合方法 二、实验内容分别测试力矩电机、测速机、功率放大器及反馈电位计的各种性能及输入/输出特性;根据测试结果建立小功率随动系统的数学模型;分析误差产生原因. 三、实验设备IBM PC 系列微机一台(586以上机型)、HD1219 12位A/D D/A接口板一块、XSJ-3 小功率直流随动系统学习机一台、DH1

    2、718 双路直流稳压电源一台、4 1/2 数字多用表一台、DT6234 光电式转速表一台、MF-18 电流表一块四、实验步骤及数据处理模拟式小功率随动系统的实验调试:(1)系统结构图伺服系统实验电路(2)实验数据:滑动变阻(k)37.62544静态误差(V)-0.170.18-0.70.14给定角度()30303030输出角度()12252728静差角度()-18-5-3-3(3)动态响应曲线:输入电压为3 k的实验图形结论:从图中可以看出有较大的静态误差。输入电压为7.6 k的时候静态误差较小结论:从图中可以看出此时的静态误差较小。输入电压为245k出现较大的超调量。结论:此时出现较大的超调

    3、量。输入电压为44 k的图像结论:从图中可以看出系统阶跃响应已经呈现高频振荡。五课后思考1. 如果速度反馈极性不对应如何处理?如果位置反馈极性不对应如何处理?答:给定1v的输入电压,用万用表测反馈的电压值,如果不为负值,说明速度环的反馈极性不对应,这时候应该要把测速机的输出极性倒置。同速度环反馈极性的测量方法,如果反馈极性不对应,就将电位计端10V的接线对调。2. 系统是几阶无静差系统?产生静差的原因。答:系统为二阶无静差系统,当比例因子K是以偏差调节电机转角的,所以会产生静差。积分环节用于消除静差产生静差的其它原因有:1.实验条件的限制,无法满足严格的理论值。 2.时间上存在延迟。 3. 运

    4、算放大器的开环放大系数数值有限3. 说出开环放大系数与静差及稳定性的关系.二、A/D和D/A接口的使用和数据采集一、 实验目的1)了解A/D和D/A接口的基本原理,硬件结构及编程方法2)掌握机器内部的数据转换和储存方式3)测量A/D和D/A的输入输出特性,分析误差产生原因二、实验内容1)用C语言编制A/D和D/A程序2)输入电压进行测试并测量输出电压三、实验设备1)IBM PC系列微机一台(586)2)HD1219 12位A/D D/A接口板一块3)DH1718双路直流稳压电源一台4)4 1/2 数字多用表一台四、实验原理1)HD1219接口板I/O地址的功能基地址Base=310H如下表 :

    5、地址芯片R/W功能BaseAD574W通道选择Base+1AD574WA/D起动Base+2AD574R高4位Base+3AD574R低8位Base+4DA1232(1)W高8位Base+5DA1232(1)W/R低4位,启动D/ABase+6DA1232(2)W高8位Base+7DA1232(2)W/R低4位,启动D/ABase+88253(计数器)W计数器0Base+98253(计数器)W计数器1Base+108253(计数器)W计数器2Base+118253(计数器)W控制字Base+128255(并口)W/RA口Base+138255(并口)W/RB口Base+148255(并口)W/

    6、RC口Base+158255(并口)W控制字2)A/D原理3)D/A原理五、实验数据记录处理(1)A/D转换电压(V)-10-7.5-5-2.50偏移码32024016007ff补码f803fa02fc01fe00ffff浮点数-0.998626-0.749132-0.499542-0.250000-0.000503电压(V)2.557.510 偏移码a00bfcdfffc3补码2003fc5ff7c3浮点数0.2500000.4980400.7495120.970215(2)D/A转换 Co大小 00002000400060008000A000C000E000FFFFV(理论值)-5-3.7

    7、5-2.5-1.2501.252.53.755V(实测值)-5.005-3.742-2.510-1.260-0.0011.2512.5003.7515.002转换码01ffe3ffc5ffa7ff89ff6bff4dff2fff0六、实验总结1、在实验中,A/D、D/A转换存在一定的误差,主要原因有1)量化误差,模拟量和数字量之间的转换存在量化误差;2)万用表的精度误差;3)噪音引起的误差。2、通过本次实验,熟悉了A/D和D/A的硬件口以及如何通过编程来设置A/D和D/A。和微机原理的实验有很大的相似点。实验四 计算机控制系统的实验调试一、实验目的掌握数控伺服系统静态参数选取的一般方法;掌握利

    8、用极点配置方法进行离散系统全状态反馈控制规律及降维观测器的设计;掌握控制算法编排实现及比例因子配置方法;学会数控伺服系统调试的方法与过程。 二、实验设备IBM PC 系列微机一台(586)、HD1219 12位A/D D/A接口板一块、XSJ-3 小功率直流随动系统学习机一台、DH1718 双路直流稳压电源一台、4 1/2 数字多用表一台三、实验步骤1、系统结构图:直流数控伺服系统原理图数控伺服系统电路图数控伺服系统结构图2、系统设计:要求:D/A输出120mv,电机启动:,则D/A输出10v,电机转速26rad/s,考虑静态值,可得方程解之得k=0.3494(2)、求状态方程经过Z变换之后可

    9、得可得状态方程即原系统极点,所以根据取 得 所以则期望的特征方程是由Ackerman公式可得降维观测器极点为又则 所以令可得L= 0.6799可得对上述两个式子做Z变换得:可得所以根据系统调整参数k1=-0.6743,k2=0.25,k3=-0.459,k4=0.521,k5=2,k6=23、程序控制流程图: 五、 实验数据处理一、实验程序代码#include #include #include #include #include #include #include #define pi 3.14159265/*-define k1 to k7-*/float k1=-0.6743,k2=0.

    10、25,k3=-0.459,k4=0.521,k5=2,k6=2float t=0.025,x=0,x1,adpre=0,adpre1=0;float timer=0;int N1;void interrupt (*oldint)(.);void interrupt newint(.);float adc(int n);void dac(float da);void initialscreen();void main() initialscreen(); oldint=getvect(0xb); setvect(0xb,newint); disable(); int n,temp; N1=10/

    11、t; x1=50*t; n=2000000*t; temp=n; n=n*256; outportb(0x31b,0xb6); outportb(0x31a,n); outportb(0x31a,temp); outportb(0x21,inportb(0x21)&0xf7); setcolor(RED); enable(); getch(); closegraph(); outportb(0x21,inport(0x21)|0x08); setvect(0xb,oldint);void interrupt newint(.) while(timer=N1) disable(); outpor

    12、tb(0x20,0x20); goto a; timer=timer+0.3 ; float ad0,ad1,a1,da,d1; ad0=adc(0); ad1=adc(1); /*-DRAW THE PICTURE-*/ setcolor(BLUE); line(240+x1*timer,120-adpre1*90,240+x1*timer,120-ad0*90); adpre1=ad0; setcolor(RED); line(240+x1*(timer),350-adpre*90,240+x1*timer,350-ad1*90); adpre=ad1; /*-DRAW THE POINT

    13、ER-*/ setcolor(BLACK); setfillstyle(0,BLACK); fillellipse(120,120,77,77); setcolor(BLUE); line(120,120,120+75*cos(ad0+0.5)*pi),120-75*sin(ad0+0.5)*pi); setcolor(RED); setfillstyle(0,RED); fillellipse(120,350,77,77); setcolor(YELLOW); line(120,350,120+75*cos(ad1+0.5)*pi),350-75*sin(ad1+0.5)*pi); a1=a

    14、d1*k1+x; d1=ad0*k5+a1*k2; if(d1=1/k6) d1=1/k6; else if(d1=-1/k6) d1=-1/k6; da=k7*d1; dac(da); x=k1*k3*ad1+k4*a1; a: outportb(0x20,0x20);/*-D/A PROGRAM-*/void dac(float da)int y,lo,hi,newhi,newlo;y=(da+1)/2*0xfff0;lo=y&0x00ff;hi=(y&0xff00)/256;newhi=(hi&0x000f)*16+(hi&0x00f0)/16;outportb(0x314,newhi)

    15、;newlo=(lo&0x00f0)/16;outportb(0x315,newlo);inportb(0x315);/*-A/D PROGRAM-*/float adc(int n) float ad; int p,q; int i,r; outportb(0x31b,0x18); outportb(0x310,n); for(i=0;i500;i+) outportb(0x311,0x0); for(i=0;i500;i+) p=inportb(0x312)%16; q=inportb(0x313); /printf(%0x,%0xn,p,q); r=p*256+q; /printf(%0

    16、x,r); float r1=r; ad=r1/0x800-1; /printf(%f,ad); /getch(); return ad; /*-FIGURE PLOT-*/void initialscreen() int gm, i,Radius,numy,width,startx,starty,height,blockHeight; char msg100; int point16; int gdriver = DETECT, gmode; initgraph(&gdriver, &gmode,D:BORLANDCBGI); cleardevice(); setbkcolor(WHITE)

    17、; setcolor(3); int x1=120,y1=120; int x2=120,y2=350;/ Radius=80; char k100; for(float t=0;t=360) sprintf(k,%2.0f,t-360); outtextxy(x1+120*sin(t/180*pi),y1+120*cos(180-t)/180*pi),k); outtextxy(x2+120*sin(t/180*pi),y2+120*cos(180-t)/180*pi),k); else outtextxy(x1+108*sin(t/180*pi),y1+108*cos(180-t)/180

    18、*pi),k); outtextxy(x2+108*sin(t/180*pi),y2+108*cos(180-t)/180*pi),k); setcolor(4); line(x1+85*sin(t/180*pi),y1+85*cos(180-t)/180*pi),x1+100*sin(t/180*pi),y1+100*cos(180-t)/180*pi); line(x2+85*sin(t/180*pi),y2+85*cos(180-t)/180*pi),x2+100*sin(t/180*pi),y2+100*cos(180-t)/180*pi); setcolor(14); else li

    19、ne(x1+90*sin(t/180*pi),y1+90*cos(180-t)/180*pi),x1+100*sin(t/180*pi),y1+100*cos(180-t)/180*pi); line(x2+90*sin(t/180*pi),y2+90*cos(180-t)/180*pi),x2+100*sin(t/180*pi),y2+100*cos(180-t)/180*pi); else line(x1+94*sin(t/180*pi),y1+94*cos(180-t)/180*pi),x1+100*sin(t/180*pi),y1+100*cos(180-t)/180*pi); lin

    20、e(x2+94*sin(t/180*pi),y2+94*cos(180-t)/180*pi),x2+100*sin(t/180*pi),y2+100*cos(180-t)/180*pi); char input,output; sprintf(msg,Input V:,input); outtextxy(373,15,msg); setcolor(RED); sprintf(msg,Output V:,output); outtextxy(373,235,msg); height=180, width=390,startx=240,starty=30; int rp8; char a60; s

    21、etfillstyle(1,WHITE); rp0 = rp2 = startx; rp1 = rp7 = starty; rp4 = rp6 = startx+width; rp3 = rp5 = starty+height; fillpoly(4,rp); settextstyle(0,0,0); setlinestyle(1,1,1); setcolor(DARKGRAY); height=180, width=390,startx=240,starty=260; int tp8; char b60; setfillstyle(1,WHITE); tp0 = tp2 = startx;

    22、tp1 = tp7 = starty; tp4 = tp6 = startx+width; tp3 = tp5 = starty+height; fillpoly(4,tp); settextstyle(0,0,0); setlinestyle(1,1,1); setcolor(DARKGRAY); /*-AXIS PLOT-*/for(numy=30,i=0;i=10;i+,numy+=18) line(240,numy,620,numy); for(numy=275,i=0;i=10;i+,numy+=18) line(240,numy,620,numy); for(numy=19,i=0

    23、;i=20;i+,numy+=19) line(240+numy,30,240+numy,210); for(numy=19,i=0;i=20;i+,numy+=19) line(240+numy,260,240+numy,440); setcolor(LIGHTBLUE);rectangle(240,30,620,210);rectangle(240,260,620,440);setcolor (RED);for(numy=30,i=0;i=10;i+,numy+=18) sprintf(msg,%d,2*(5-i) ); outtextxy(225,numy,msg); for(numy=

    24、260,i=0;i=10;i+,numy+=18 ) sprintf(msg,%d,2*(5-i) ); outtextxy(225,numy,msg); setcolor(GREEN);line(240,40,240,200);line(240,270,240,430);line(240,120,620,120);line(240,347,620,347);for(numy=240,i=0;i15;i+,numy+=25) sprintf(msg,%d,i ); outtextxy(numy,130,msg); for(numy=240,i=0;i15;i+,numy+=25) sprint

    25、f(msg,%d,i); outtextxy(numy,355,msg); setcolor(GREEN) ;setlinestyle(SOLID_LINE,0,1); t=0; circle(x1,y1,100); line(x1,y1,x1+75*sin(t/180*pi),y1+75*cos(180-t)/180*pi); circle(x2,y2,100); line(x2,y2,x2+75*sin(t/180*pi),y2+75*cos(180-t)/180*pi); setcolor(RED); outtextxy(280,450,-Designed BY WANGZIMENG_3

    26、7030422);二、 实验图形1、利用计算所得到的数据对阶跃信号进行跟踪k1=-0.6743,k2=0.25,k3=-0.459,k4=0.521,k5=2,k6=22、改变参数跟踪阶跃信号当 k1=-0.6546,k2=0.25,k3=-0.4293,k4=0.5024,k5=0.75,k6=4,当 k1=-0.6546,k2=0.25,k3=-0.4293,k4=0.5024,k5=0.75,k6=4,当 k1=-0.67,k2=0.25,k3=-0.459,k4=0.521,k5=0.75,k6=0.25,实验结果分析:由图像中可以看出(1)K1增大时候系统跟踪时候出现超调,因为K1是闭环反馈增益,从而K1 增加时候导致闭环增益增加,因而系统的稳态改变,稳态性能变化,出线超调。(2)K2只是系统的反馈极性问题,这里没有必要改变,因为是负反馈所以K1*K2是保持负的,而K1是负的,所以K2是正的。(3)K3是系统的零点,K3会影响系统的增益范围。(4)K4是系统的极点,K4会影响系统的稳定性,K4在单位圆内时候会保持系统的稳定,当K4在单位圆之外时候会让系统不再稳定。极点越靠近原点,系统就会越稳定,极点越靠近1,则系统让靠近震荡状态。(5)K5是前向通道增益,会影响系统的稳定增益,输出幅值。由于AD与


    注意事项

    本文(计算机控制系列实验报告.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

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

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


    收起
    展开