lily完美lily
你这个可以用模拟图实现的 无需写程序 给个参考你吧本设计有5个模块组成,其中有:方波发生器,三角波发生器,正弦波发生器,阶梯波发生器,4选1选择器。下面是我设计的整个过程:方波发生器:实质上是一段时间输出0,一段时间输出255的数字信号,当然这有8位的通道输出。程序设计如下:--工程名:方波发生器--功能:产生方波,是通过交替送出全0和全1实现的,每32个时钟翻转一次--时间:2010-12-17library ieee;use ;use ;use ;entity sqaure is port(clk,clr:in std_logic; q:out integer range 0 to 255 );end entity;architecture behav of sqaure issignal a:bit;begin process(clk,clr) --计数分频 variable cnt:integer range 0 to 32; begin if(clr='0') then a<='0'; elsif clk'event and clk='1' then if cnt<31 then --进行32分频 cnt:=cnt+1; else cnt:=0; a<=not a; end if; end if; end process; process(clk,a) --信号输出 begin if clk'event and clk='1' then if a='1' then q<=255; else q<=0; end if; end if; end process; end behav;三角波发生器:实质上是先输出直线递增的数字信号,随后按照同样的斜率输出递减的数字信号。这样就能实现三角波的发生了。程序设计如下:--工程名:三角波信号发生器--功能:产生的三角波以64个时钟为一个周期,输出q每次加减8。--时间:2010-12-17library ieee;use ;use ;use ;entity delta1 is port(clk:in std_logic;--时钟信号 rst:in std_logic;--复位信号 q:out std_logic_vector(7 downto 0)); --输出信号end entity;architecture behav of delta1 is begin process(clk,rst) variable tmp:std_logic_vector(7 downto 0); variable a:std_logic; begin if(rst='0') then tmp:="00000000"; elsif clk'event and clk='1' then if(a='0') then if(tmp="11111000") then --tmp=248 tmp:="11111111"; a:='1';--信号计数完成,下一次改成递减 else tmp:=tmp+8;--递增 end if; else if tmp="00000111" then --tmp=7 tmp:="00000000"; a:='0';--信号计数完成,下一次改成递增 else tmp:=tmp-8;--递减 end if; end if; end if; q<=tmp;--信号输出 end process; end behav;正弦波发生器:这里我设计了64个状态,就是将一个周期的正弦波分成64分,在然后一份份的数字信号输出就可以了。具体怎么取值,用excel计算就可以了。自己手动计算也可以的哦。具体程序设计如下:library ieee;use ;use ;use ;entity sin1 is port(clk,clr:in std_logic; d:out integer range 0 to 255);end entity;architecture behav of sin1 isbegin process(clk,clr) variable tmp:integer range 0 to 63; begin if clr='0' then d<=0; elsif clk'event and clk='1' then if tmp=63 then tmp:=0; else tmp:=tmp+1; end if; case tmp is when 00=>d<=255; when 01=>d<=254;when 02=>d<=252; when 03=>d<=249; when 04=>d<=245;when 05=>d<=239; when 06=>d<=233; when 07=>d<=225;when 08=>d<=217; when 09=>d<=207; when 10=>d<=197;when 11=>d<=186; when 12=>d<=174; when 13=>d<=162;when 14=>d<=150; when 15=>d<=137; when 16=>d<=124;when 17=>d<=112; when 18=>d<=99; when 19=>d<=87; when 20=>d<=75; when 21=>d<=64; when 22=>d<=53; when 23=>d<=43; when 24=>d<=34; when 25=>d<=26; when 26=>d<=19; when 27=>d<=13; when 28=>d<=8; when 29=>d<=4; when 30=>d<=1; when 31=>d<=0; when 32=>d<=0; when 33=>d<=1; when 34=>d<=4; when 35=>d<=8; when 36=>d<=13; when 37=>d<=19; when 38=>d<=26; when 39=>d<=34; when 40=>d<=43; when 41=>d<=53; when 42=>d<=64; when 43=>d<=75; when 44=>d<=87; when 45=>d<=99; when 46=>d<=112;when 47=>d<=124; when 48=>d<=137; when 49=>d<=150;when 50=>d<=162; when 51=>d<=174; when 52=>d<=186;when 53=>d<=197; when 54=>d<=207; when 55=>d<=217;when 56=>d<=225; when 57=>d<=233; when 58=>d<=239;when 59=>d<=245; when 60=>d<=249; when 61=>d<=252;when 62=>d<=252; when 63=>d<=255; when others=>null; end case; end if; end process; end behav;
隐形冠军
液压伺服系统设计 液压伺服系统设计 在液压伺服系统中采用液压伺服阀作为输入信号的转换与放大元件。液压伺服系统能以小功率的电信号输入,控制大功率的液压能(流量与压力)输出,并能获得很高的控制精度和很快的响应速度。位置控制、速度控制、力控制三类液压伺服系统一般的设计步骤如下: 1)明确设计要求:充分了解设计任务提出的工艺、结构及时系统各项性能的要求,并应详细分析负载条件。 2)拟定控制方案,画出系统原理图。 3)静态计算:确定动力元件参数,选择反馈元件及其它电气元件。 4)动态计算:确定系统的传递函数,绘制开环波德图,分析稳定性,计算动态性能指标。 5)校核精度和性能指标,选择校正方式和设计校正元件。 6)选择液压能源及相应的附属元件。 7)完成执行元件及液压能源施工设计。 本章的内容主要是依照上述设计步骤,进一步说明液压伺服系统的设计原则和介绍具体设计计算方法。由于位置控制系统是最基本和应用最广的系统,所以介绍将以阀控液压缸位置系统为主。 全面理解设计要求 全面了解被控对象 液压伺服控制系统是被控对象—主机的一个组成部分,它必须满足主机在工艺上和结构上对其提出的要求。例如轧钢机液压压下位置控制系统,除了应能够承受最大轧制负载,满足轧钢机轧辊辊缝调节最大行程,调节速度和控制精度等要求外,执行机构—压下液压缸在外形尺寸上还受轧钢机牌坊窗口尺寸的约束,结构上还必须保证满足更换轧辊方便等要求。要设计一个好的控制系统,必须充分重视这些问题的解决。所以设计师应全面了解被控对象的工况,并综合运用电气、机械、液压、工艺等方面的理论知识,使设计的控制系统满足被控对象的各项要求。 明角设计系统的性能要求 1)被控对象的物理量:位置、速度或是力。 2)静态极限:最大行程、最大速度、最大力或力矩、最大功率。 3)要求的控制精度:由给定信号、负载力、干扰信号、伺服阀及电控系统零飘、非线性环节(如摩擦力、死区等)以及传感器引起的系统误差,定位精度,分辨率以及允许的飘移量等。 4)动态特性:相对稳定性可用相位裕量和增益裕量、谐振峰值和超调量等来规定,响应的快速性可用载止频率或阶跃响应的上升时间和调整时间来规定; 5)工作环境:主机的工作温度、工作介质的冷却、振动与冲击、电气的噪声干扰以及相应的耐高温、防水防腐蚀、防振等要求; 6)特殊要求;设备重量、安全保护、工作的可靠性以及其它工艺要求。 负载特性分析 正确确定系统的外负载是设计控制系统的一个基本问题。它直接影响系统的组成和动力元件参数的选择,所以分析负载特性应尽量反映客观实际。液压伺服系统的负载类型有惯性负载、弹性负载、粘性负载、各种摩擦负载(如静摩擦、动摩擦等)以及重力和其它不随时间、位置等参数变化的恒值负载等。 拟定控制方案、绘制系统原理图 在全面了解设计要求之后,可根据不同的控制对象,按表6所列的基本类型选定控制方案并拟定控制系统的方块图。如对直线位置控制系统一般采用阀控液压缸的方案,方块图如图36所示。图36 阀控液压缸位置控制系统方块图表6 液压伺服系统控制方式的基本类型伺服系统 控制信号 控制参数 运动类型 元件组成机液电液气液电气液 模拟量数字量位移量 位置、速度、加速度、力、力矩、压力 直线运动摆动运动旋转运动 1.阀控制:阀-液压缸,阀-液压马达2.容积控制:变量泵-液压缸;变量泵-液压马达;阀-液压缸-变量泵-液压马达3.其它:步近式力矩马达 动力元件参数选择 动力元件是伺服系统的关键元件。它的一个主要作用是在整个工作循环中使负载按要求的速度运动。其次,它的主要性能参数能满足整个系统所要求的动态特性。此外,动力元件参数的选择还必须考虑与负载参数的最佳匹配,以保证系统的功耗最小,效率高。 动力元件的主要参数包括系统的供油压力、液压缸的有效面积(或液压马达排量)、伺服阀的流量。当选定液压马达作执行元件时,还应包括齿轮的传动比。 供油压力的选择 选用较高的供油压力,在相同输出功率条件下,可减小执行元件——液压缸的活塞面积(或液压马达的排量),因而泵和动力元件尺寸小重量轻,设备结构紧凑,同时油腔的容积减小,容积弹性模数增大,有利于提高系统的响应速度。但是随供油压力增加,由于受材料强度的限制,液压元件的尺寸和重量也有增加的趋势,元件的加工精度也要求提高,系统的造价也随之提高。同时,高压时,泄漏大,发热高,系统功率损失增加,噪声加大,元件寿命降低,维护也较困难。所以条件允许时,通常还是选用较低的供油压力。 常用的供油压力等级为7MPa到28MPa,可根据系统的要求和结构限制条件选择适当的供油压力。 伺服阀流量与执行元件尺寸的确定 如上所述,动力元件参数选择除应满足拖动负载和系统性能两方面的要求外,还应考虑与负载的最佳匹配。下面着重介绍与负载最佳匹配问题。 (1)动力元件的输出特性 将伺服阀的流量——压力曲线经坐标变换绘于υ-FL平面上,所得的抛物线即为动力元件稳态时的输出特性,见图37。 图37 参数变化对动力机构输出特性的影响a)供油压力变化;b)伺服阀容量变化;c)液压缸面积变化 图中 FL——负载力,FL=pLA; pL——伺服阀工作压力; A——液压缸有效面积; υ——液压缸活塞速度, ; qL——伺服阀的流量; q0——伺服阀的空载流量; ps——供油压力。 由图37可见,当伺服阀规格和液压缸面积不变,提高供油压力,曲线向外扩展,最大功率提高,最大功率点右移,如图37a。 当供油压力和液压缸面积不变,加大伺服阀规格,曲线变高,曲线的顶点A ps不变,最大功率提高,最大功率点不变,如图37b。 当供油压力和伺服阀规格不变,加大液压缸面积A,曲线变低,顶点右移,最大功率不变,最大功率点右移,如图37c。 (2)负载最佳匹配图解法 在负载轨迹曲线υ-FL平面上,画出动力元件输出特性曲线,调整参数,使动力元件输出特性曲线从外侧完全包围负载轨迹曲线,即可保证动力元件能够拖动负载。在图38中,曲线1、2、3代表三条动力元件的输出特性曲线。曲线2与负载轨迹最大功率点c相切,符合负载最佳匹配条件,而曲线1、3上的工作点α和b,虽能拖动负载,但效率都较低。 (3)负载最佳匹配的解析法 参见液压动力元件的负载匹配。 (4)近似计算法在工程设计中,设计动力元件时常采用近似计算法,即按最大负载力FLmax选择动力元件。在动力元件输出特性曲线上,限定 FLmax≤pLA= ,并认为负载力、最大速度和最大加速度是同时出现的,这样液压缸的有效面积可按下式计算: (37) 图38 动力元件与负载匹配图形 按式37求得A值后,可计算负载流量qL,即可根据阀的压降从伺服阀样本上选择合适的伺服阀。近似计算法应用简便,然而是偏于保守的计算方法。采用这种方法可以保证系统的性能,但传递效率稍低。 (5)按液压固有频率选择动力元件 对功率和负载很小的液压伺服系统来说,功率损耗不是主要问题,可以根据系统要求的液压固有频率来确定动力元件。 四边滑阀控制的液压缸,其活塞的有效面积为 (38) 二边滑阀控制的液压缸,其活塞的有效面积为 (39) 液压固有频率ωh可以按系统要求频宽的(5~10)倍来确定。对一些干扰力大,负载轨迹形状比较复杂的系统,不能按上述的几种方法计算动力元件,只能通过作图法来确定动力元件。 计算阀控液压马达组合的动力元件时,只要将上述计算方法中液压缸的有效面积A换成液压马达的排量D,负载力FL换成负载力矩TL,负载速度换成液压马达的角速度 ,就可以得到相应的计算公式。当系统采用了减速机构时,应注意把负载惯量、负载力、负载的位移、速度、加速度等参数都转换到液压马达的轴上才能作为计算的参数。减速机构传动比选择的原则是:在满足液压固有频率的要求下,传动比最小,这就是最佳传动比。 伺服阀的选择 根据所确定的供油压力ps和由负载流量qL(即要求伺服阀输出的流量)计算得到的伺服阀空载流量q0,即可由伺服阀样本确定伺服阀的规格。因为伺服阀输出流量是限制系统频宽的一个重要因素,所以伺服阀流量应留有余量。通常可取15%左右的负载流量作为伺服阀的流量储备。 除了流量参数外,在选择伺服阀时,还应考虑以下因素: 1)伺服阀的流量增益线性好。在位置控制系统中,一般选用零开口的流量阀,因为这类阀具有较高的压力增益,可使动力元件有较大的刚度,并可提高系统的快速性与控制精度。 2)伺服阀的频宽应满足系统频宽的要求。一般伺服阀的频宽应大于系统频宽的5倍,以减小伺服阀对系统响应特性的影响。 3)伺服阀的零点漂移、温度漂移和不灵敏区应尽量小,保证由此引起的系统误差不超出设计要求。 4)其它要求,如对零位泄漏、抗污染能力、电功率、寿命和价格等,都有一定要求。 执行元件的选择 液压伺服系统的执行元件是整个控制系统的关键部件,直接影响系统性能的好坏。执行元件的选择与设计,除了按本节所述的方法确定液压缸有效面积A(或液压马达排量D)的最佳值外,还涉及密封、强度、摩擦阻力、安装结构等问题。 反馈传感器的选择 根据所检测的物理量,反馈传感器可分为位移传感器、速度传感器、加速度传感器和力(或压力)传感器。它们分别用于不同类型的液压伺服系统,作为系统的反馈元件。闭环控制系统的控制精度主要决定于系统的给定元件和反馈元件的精度,因此合理选择反馈传感器十分重要。 传感器的频宽一般应选择为控制系统频宽的5~10倍,这是为了给系统提供被测量的瞬时真值,减少相位滞后。传感器的频宽对一般系统都能满足要求,因此传感器的传递函数可近似按比例环节来考虑。 确定系统方块图 根据系统原理图及系统各环节的传递函数,即可构成系统的方块图。根据系统的方块图可直接写出系统开环传递函数。阀控液压缸和阀控液压马达控制系统二者的传递函数具有相同的结构形式,只要把相应的符号变换一下即可。 绘制系统开环波德图并确定开环增益 系统的动态计算与分析在这里是采用频率法。首先根据系统的传递函数,求出波德图。在绘制波德图时,需要确定系统的开环增益K。 改变系统的开环增益K时,开环波德图上幅频曲线只升高或降低一个常数,曲线的形状不变,其相频曲线也不变。波德图上幅频曲线的低频段、穿越频率以及幅值增益裕量分别反映了闭环系统的稳态精度、截止频率及系统的稳定性。所以可根据闭环系统所要求的稳态精度、频宽以及相对稳定性,在开环波德图上调整幅频曲线位置的高低,来获得与闭环系统要求相适应的K值。 由系统的稳态精度要求确定K 由控制原理可知,不同类型控制系统的稳态精度决定于系统的开环增益。因此,可以由系统对稳态精度的要求和系统的类型计算得到系统应具有的开环增益K。 由系统的频宽要求确定K 分析二阶或三阶系统特性与波德图的关系知道,当ζh和K/ωh都很小时,可近似认为系统的频宽等于开环对数幅值曲线的穿越频率,即ω-3dB≈ωc,所以可绘制对数幅频曲线,使ωc在数值上等于系统要求的ω-3dB值,如图39所示。由此图可得K值。 图39 由ω-3dB绘制开环对数幅频特性a)0型系统;b)I型系统 由系统相对稳定性确定K 系统相对稳定性可用幅值裕量和相位裕量来表示。根据系统要求的幅值裕量和相位裕量来绘制开环波德图,同样也可以得到K。见图40。 实际上通过作图来确定系统的开环增益K,往往要综合考虑,尽可能同时满足系统的几项主要性能指标。 系统静动态品质分析及确定校正特性 在确定了系统传递函数的各项参数后,可通过闭环波德图或时域响应过渡过程曲线或参数计算对系统的各项静动态指标和误差进行校核。如设计的系统性能不满足要求,则应调整参数,重复上述计算或采用校正环节对系统进行补偿,改变系统的开环频率特性,直到满足系统的要求。 仿真分析 在系统的传递函数初步确定后,可以通过计算机对该系统进行数字仿真,以求得最佳设计。目前有关于数字仿真的商用软件,如Matlab软件,很适合仿真分析。
给个提示吧:用DDS方法实现,牛B一点的自己用FPGA做,做不了就用市面上现有的DDS芯片。
在微信公众平台分为两种类型的号,服务号与订阅号。服务号现在使用者越来越多,而且开发功能很齐全。所以申请服务号使用最方便。下面我就来分享一下如何申请微信公众平台服
车站信号自动控制系统的设计(铁道信号论文)
脉冲信号发生器,本人曾用过宁波中策电子有限公司DF1521型
(1)结构 1)膜片弹簧:用优质弹簧钢板制成,形状为碟形,开有径向切槽,切槽内端连通,外端为圆孔。两个切槽之间钢板形成一个弹性杠杆,即是压紧弹簧又是分离杠杆 2