comsol中脉冲函数产生方法
- 格式:docx
- 大小:120.26 KB
- 文档页数:1
脉冲在PLC中的产生原理与应用发表时间:2013-10-18T16:20:00.263Z 来源:《职业技术教育》2013年第8期供稿作者:李建波[导读] 当执行用户程序时,需要各种现场信息,如果这些现场信息已送到PLC的输入端口。
李建波(寿光市技工学校山东潍坊262700)摘要:本文研究了在PLC中用基本逻辑产生脉冲信号的原理和方法,它在设计梯形图有特殊的用途,可以用于各种型号的PLC。
给梯形图的编写带来便利。
关键词:PLC 梯形图脉冲信号一、概述可编程控制器(PLC)的出现给自动控制带来了一场革命。
它是在继电顺序控制基础上发展起来的以微处理器为核心的通用自动控制装置,是电子技术、计算机技术与继电逻辑自动控制系统相结合的产物。
它不仅充分发挥了计算机的优点,采用存储程序控制方式,其控制功能是通过存放在存储器内的程序来实现的,若要对控制功能做必要的修改,只需要改变软件指令即可,实现了硬件控制的软件化,以满足各种不同的工业生产过程自动控制的需要,同时又照顾一般电气操作人员的技术水平和习惯,多采用梯形图编程方式,结合可编程控制器的工作特点,脉冲在梯形图的设计中有独特的用途。
二、PLC工作原理可编程控制器属于工业控制计算机,它的工作原理是建立在计算机工作原理基础上的,通过执行反映控制要求的用户程序来实现。
当执行用户程序时,需要各种现场信息,如果这些现场信息已送到PLC的输入端口,PLC将采集所有输入信号并放到输入映象寄存器中,执行用户程序时所需要输入状态均在输入映象寄存器中取用。
同样,PLC对外部的输出控制也是先把CPU执行用户程序后的输出结果存放在输出映象寄存器中,等程序完后,将所有输出结果一次性输出到输出端口,使输出设备部件动作。
PLC的工作过程是一个不断循环扫描的过程。
CPU从第一条指令开始,按顺序逐条执行用户程序直到程序结束,然后返回第一条指令开始新的一轮扫描。
当PLC处于正常运行时,PLC会不断循环扫描工作下去,其工作过程分为:输入采样、程序执行和输出刷新三个阶段。
comsol内置函数算符d(f,x) f对x⽅向的微分1. 使⽤d算符来计算⼀个变量对另⼀个变量的导数,如:d(T,x)指变量T对x求导,⽽d(u^2,u)=2*u等;2. 如果模型中含有任何独⽴变量,建模中使⽤d算符会使模型变为⾮线性;3. 在解的后处理上使⽤d算符,可以使⽤⼀些预置的变量,如:uxx,d(ux,x),d(d(u,x),x)都是等效的;4. pd算符与d算符类似,但对独⽴变量不使⽤链式法则;5. d(E,TIME)求解表达式E的时间导数;6. dtang算符可以计算表达式在边界上的切向微分(d算符⽆法计算),在求解域上使⽤dtang等价于d,dtang只求解对坐标变量的微分,但需要注意的是并不是所有的量都有切向微分。
pd(f,x) f对x⽅向的微分pd和d的区别:d(u+x,x)=ux+1,d(u,t)=ut,u和x,t等有关pd(u+x,x)=1,pd(u,t)=0,u是独⽴的和x,t⽆关dtang(f,x) 边界上f对x的切向微分在边界上d(u,x)不能定义,但是可以使⽤dtang(u,x),dtang付出基本的微分法则,如乘积法则和链式法则,但是需要指出的是,dtang(x,x)不⼀定等于1。
test(expr) 试函数⽤于⽅程弱形式的算符,test(F(u,?u))等价于:var(expr,fieldname1,fieldname2, ...)变异算⼦⽤于弱形式,它和test算符功能相同,但是仅⽤于某些特定的场中;如var(F(u,?u, v,?v),a),变量u是a场的变量,⽽v不是。
试函数之只作⽤于变量u。
nojac(expr) 对Jacobian矩阵没有贡献将表达式排除在Jacobian计算外,这对那些对Jacobian贡献不⼤,但是计算消耗很⼤的变量是否有效;k-e 湍流模型就是利⽤nojac算符来提⾼计算性能的例⼦。
up(expr) 上邻近估算表达式up,down,mean算符只能⽤在边界上,对于⼀个表达式或变量在边界处两边不连续,COMSOL通常显⽰边界的平均值,使⽤up,down可计算某个⽅向上的值。
COMSOL Multiphysics使用技巧(旧版通用)一、全局约束/全局定义对于多物理仿真,添加全局约束是COMSOL非常有用的功能之一。
例如,对于一个涉及传热的仿真,希望能够调整热源Q_0的大小,从而使得某一位置处的温度T_probe 恒定在指定值T_max,我们可以直接将这个全局约束添加进来即可。
有些情况下,全局约束可能包含有对时间的微分项,也就是常说的常微分方程(ODE ),COMSOL 同样也支持自定义ODE 作为全局约束。
例如,在一个管道内流体+物质扩散问题的仿真中,利用PID 算法控制管道入口的流速u_in_ctrl,从而使得某一位置处的浓度conc 恒定在指定值c_set 。
(基本模块模型库 〉 Multidisciplinary 〉 PID control )。
需要添加的PID 算法约束如下式:要添加上述约束,除变上限积分项外,另外两项都可以很容易的在边界条件中的“入口流速”设置中直接定义。
因此,这个变上限积分需要转化成一个ODE ,作为全局约束加入.令⎰-=tdt set c conc 0)_(int ,方程两边同对时间t 求导,得到set c conc dtd _int -=。
在COMSOL 中,变量u 对时间的导数,用ut 表示。
因此变量int 的时间导数即为intt.利用COMSOL 的“ODE 设定",我们可以很容易的将intt —(conc —c_set )=0这个ODE 全局约束添加入模型之中。
二、积分耦合变量COMSOL的语法中,变量u对空间的微分,分别默认为用ut,ux,uy,uz等来表示,这为仿真提供了极大的便利。
那么对变量u的空间积分呢?COMSOL提供了积分耦合变量来实现这一功能.积分耦合变量分为四种:点(point)积分耦合变量、边(edge)积分耦合变量、边界(boundary)积分耦合变量、求解域(subdomain)积分耦合变量。
根据模型的维度,会有相应积分耦合变量。
servopulse脉冲函数Servopulse脉冲函数,是指在控制伺服电机运动中使用的一种脉冲信号。
通俗来说,就是将数字信号转换为模拟信号的过程。
Servopulse脉冲函数的作用:1. 计算电机的速度:当控制伺服电机时,需要用到Servopulse脉冲函数来计算电机的速度。
这个速度是根据脉冲数量和时间周期来计算的。
2. 控制电机的位置:通过发送一定数量的脉冲信号,就可以控制电机的位置。
当脉冲数量增加时,电机的位置也会相应地变化。
3. 精确定位:Servopulse脉冲函数可以实现精确定位。
通过发送更多的脉冲信号,可以使电机更精准地转动到指定位置。
4. 实现移动控制:Servopulse脉冲函数与电机控制器一起使用,可以实现高精度的移动控制。
通过控制脉冲信号的频率和数量,可以让电机移动到任何需要的位置。
Servopulse脉冲函数的实现:Servopulse脉冲函数实现的主要方法是将数字信号通过数字模拟转换器(DAC)转换为模拟信号。
这个模拟信号可以在电机控制器和伺服电机之间传递。
在使用Servopulse脉冲函数时,需要将数字信号转换为模拟信号,并通过适当的逻辑电路将模拟信号发送到电机控制器。
电机控制器会根据脉冲信号的数量和时间周期计算出电机的角度,并控制电机转到指定位置。
总的来说,Servopulse脉冲函数是机械运动控制中不可或缺的一部分。
它可以实现高精度的控制,使得伺服电机可以在短时间内精准地移动到指定位置。
此外,Servopulse脉冲函数还可以通过适当的电路设计,实现更加高效的运动控制。
COMSOL操作符和数学函数用的COMSOL 操作符和数学函数算符d(f,x)f 对x 方向的微分1. 使用d 算符来计算一个变量对另一个变量的导数,如:d(T,x)指变量T 对x 求导,而d(u^2,u)=2*u 等;2. 如果模型中含有任何独立变量,建模中使用d 算符会使模型变为非线性;3. 在解的后处理上使用d 算符,可以使用一些预置的变量,如:uxx,d(ux,x),d(d(u,x),x)都是等效的;4. pd 算符与d 算符类似,但对独立变量不使用链式法则;5. d(E,TIME)求解表达式E 的时间导数;6. dtang 算符可以计算表达式在边界上的切向微分(d 算符无法计算),在求解域上使用dtang 等价于d ,dtang 只求解对坐标变量的微分,但需要注意的是并不是所有的量都有切向微分。
pd(f,x)f 对x 方向的微分pd 和d 的区别:d(u+x,x)=ux+1,d(u,t)=ut ,u 和x,t 等有关pd(u+x,x)=1,pd(u,t)=0,u 是独立的和x,t 无关dtang(f,x)边界上f 对x 的切向微分在边界上d(u,x)不能定义,但是可以使用dtang(u,x),dtang 付出基本的微分法则,如乘积法则和链式法则,但是需要指出的是,dtang(x,x)不一定等于1。
test(expr)试函数用于方程弱形式的算符,test(F(u,?u))等价于:var(expr,fieldname1,变异算子、管路敷设技术通过管线敷设技术不仅可以解决吊顶层配置不规范高中资料试卷问题,而且可保障各类管路习题到位。
在管路敷设过程中,要加强看护关于管路高中资料试卷连接管口处理高中资料试卷弯扁度固定盒位置保护层防腐跨接地线弯曲半径标高等,要求技术交底。
管线敷设技术中包含线槽、管架等多项方式,为解决高中语文电气课件中管壁薄、接口不严等问题,合理利用管线敷设技术。
线缆敷设原则:在分线盒处,当不同电压回路交叉时,应采用金属隔板进行隔开处理;同一线槽内,强电回路须同时切断习题电源,线缆敷设完毕,要进行检查和检测处理。
Comsol经典实例012: 高斯波速的二次谐波产生激光系统是现代电子技术中的一个重要应用领域。
激光束的生成方法有很多种, 这些方法有个共同点: 波长由受激发射决定, 而受激发射取决于材料参数。
通常很难生成具有短波长的激光。
但是, 如果使用非线性材料, 就有可能产生频率为激光频率数倍的谐波。
通过使用二阶非线性材料可生成波长为基频光束波长一半的相干光。
本案例演示了如何设置非线性材料属性, 通过瞬态波仿真产生二次谐波。
模型中一束波长为1.06μm的激光聚焦于非线性晶体, 光束的腰部落于晶体内。
在激光的传播过程中, 大部分能量都集中在传播轴附近, 在求解麦克斯韦方程时可以近轴近似, 由此获得高斯波束。
一、物理场选择及预设研究Step01: 打开comsol软件, 单击“模型向导”选项创建模型, 在模型的“选择空间维度”界面选择“二维”, 在“选择物理场”界面分别选择“光学→波动光学→电磁波, 瞬态(ewt)”, 单击“添加”按钮。
对应变量设置完毕以后, 单击“研究”按钮, 在“选择研究”树中添加“预设研究”中的“瞬态”研究, 单击“完成”按钮进入软件主界面, 如图1所示。
图1 软件主界面二、全局定义1.参数Step02: 参数设置。
在模型开发器窗口的全局定义节点下, 单击“参数”子节点, 在“参数”设置窗口中, 定位到“参数”栏, 输入如图2所示的参数。
图2 设置全局参数2.解析定义Step03: 在“主屏幕”工具栏中单击“函数”选项, 在下拉菜单中选择“全局→解析”选项。
单击“解析1”子节点, 在“解析”设置窗口中, 定位到“函数名称”栏, 在文本输入框中输入“w”;定位到“定义”栏, 在“表达式”文本输入框中输入“w0*sqrt(1+(x/x)^2)”;定位到“单位”栏, 在“变元”文本输入框中输入“m”, 在“函数”在文本输入框中输入“m”,如图3所示。
Step04:在“主屏幕”工具栏中单击“函数”选项, 在下拉菜单中选择“全局→解析”选项。
Comsol 内置表达式:参数、变量、函数
表达式:
参数
一个参数表达式可以包含:数字、参数、常量、函数,一元、二元操作符。
参数可以有单位。
变量
个变量表达式可以包含:数字、参数、常量、变量、函数的变量表达式,一元、二元操作符。
变量可以有单位。
函数
一个函数定义可以包含:输入参数、数字参数,=常数、函数的参数表达式包括输入参数,一元和二元操作符。
注:保留函数的名称可以被用于变量和参数名,反之同样。
内置的物理常数
数扫描。
变量:主要有两种类型变量:内部保留变量和用户自定义变量,变量可以是标量也可以是字段,可以有单位。
有一组有趣的变量,即空间坐标变量和因变量,这些基于空间维度和所选物理场的变量有默认的名称,comsol会创建一张变量表来表示这些变量。
间坐标的名称。
所以可以生产下列变量:Tx、Ty、Txx、Txy Tyx、Tyy、Tt、Txt、Tyt、Txxt、Txyt、Tyxt、Tyyt、Ttt、Txtt、Tytt、Txxtt、Txytt、Tyxtt、Tyytt.其中Tx是T对x的导数,Ttt 是T对t的二阶导数,如果空间坐标系有其他的名字,同理置换相应变量。
acosh,acoth,acsch,asech,asinh,atanh,besselj,bessely,besseli,besselk, erf,gamma,和psi。
内置操作函数:。
COMSOL使用技巧COMSOL Multiphysics使用技巧(旧版通用)一、全局约束/全局定义对于多物理仿真,添加全局约束是COMSOL非常有用的功能之一。
例如,对于一个涉及传热的仿真,希望能够调整热源Q_0的大小,从而使得某一位置处的温度T_probe恒定在指定值T_max,我们可以直接将这个全局约束添加进来即可。
有些情况下,全局约束可能包含有对时间的微分项,也就是常说的常微分方程(ODE),COMSOL同样也支持自定义ODE作为全局约束。
例如,在一个管道内流体+物质扩散问题的仿真中,利用PID算法控制管道入口的流速u_in_ctrl,从而使得某一位置处的浓度conc 恒定在指定值c_set。
(基本模块模型库> Multidisciplinary > PID control)。
需要添加的PID算法约束如下式:要添加上述约束,除变上限积分项外,另外两项都可以很容易的在边界条件中的“入口流速”设置中直接定义。
因此,这个变上限积分需要转化成一个ODE ,作为全局约束加入。
令?-=tdtset c conc 0)_(int ,方程两边同对时间t 求导,得到set c conc dt d _int -=。
在COMSOL 中,变量u 对时间的导数,用ut 表示。
因此变量int 的时间导数即为intt 。
利用COMSOL 的“ODE 设定”,我们可以很容易的将intt-(conc-c_set)=0这个ODE全局约束添加入模型之中。
二、积分耦合变量COMSOL的语法中,变量u对空间的微分,分别默认为用ut,ux,uy,uz等来表示,这为仿真提供了极大的便利。
那么对变量u 的空间积分呢?COMSOL提供了积分耦合变量来实现这一功能。
积分耦合变量分为四种:点(point)积分耦合变量、边(edge)积分耦合变量、边界(boundary)积分耦合变量、求解域(subdomain)积分耦合变量。
根据模型的维度,会有相应积分耦合变量。
在Structured Control Language (SCL)中,高速脉冲指令通常用于控制脉冲的产生和分配。
这些指令可以用于实现运动控制、过程控制和逻辑控制等应用。
在SCL中,高速脉冲指令通常通过PLC(可编程逻辑控制器)或运动控制器来执行。
具体的指令和实现方式可能会因不同的PLC 和运动控制器而有所不同,但一般来说,以下是一些常见的高速脉冲指令:
1. PULSE:生成一个指定数量和频率的脉冲信号,可以用于驱动伺服电机或其他设备。
2. PULSECLR:清除脉冲信号的计数器,通常用于在需要重新生成脉冲信号时使用。
3. PULSEPLS:在脉冲信号的上升沿或下降沿时,将指定的脉冲数量添加到脉冲信号的计数器中。
4. PULSESET:设置脉冲信号的计数器为指定的值,通常用于初始化脉冲信号的计数器。
5. PULSEW AIT:等待指定的脉冲数量被消耗完,然后继续执行后续的指令。
这些高速脉冲指令可以通过编写SCL程序来控制脉冲的产生和分配。
具体的实现方式需要根据具体的PLC和运动控制器进行相应
的编程和调试。
保留函数的名称可以被用于变量和参数名,反之同样。
描述名称值双精度浮点数、机器精度eps2-52(~2.2204·10-16)虚数单位i,j i,sqrt(-1)无穷大,∞Inf,inf一个大于能被计算机处理的值非数字值NaN,nan未定义或者不能表示出来到值如0/0或者inf/infπpi 3.141592653589793描述名称值重力加速度g_const9.80665[m/s^2]阿伏伽德罗常数N_A_const 6.02214129e23[1/mol]玻耳兹曼常量k_B_const1.3806488e-23[J/K]真空特性阻抗Z0_const376.73031346177066[ohm]电子质量me_const9.10938291e-31[kg]元电荷e_const 1.602176565e-19[C]法拉第常数F_const96485.3365[C/mol]精细结构常数alpha_const7.2973525698e-3万有引力常数G_const 6.67384e-11[m^3/(kg*s^2)]标准状态下想气体体积V_m_const 2.2413968e-2[m^3/mol]中子质量mn_const 1.674927351e-27[kg]真空磁导率mu0_const4*pi*1e-7[H/m]真空介电常数epsilon0_const8.854187817000001e-12[F/m]普朗克常数h_const 6.62606957e-34[J*s]普朗克常数/2πhbar_const 1.05457172533629e-34[J*s]质子质量mp_const 1.672621777e-27[kg]真空中的光速c_const299792458[m/s]斯忒藩—玻耳兹曼常数sigma_const 5.670373e-8[W/(m^2*K^4)]通用气体常数R_const8.3144621[J/(mol*K)]维恩位移定律常数b_const 2.8977721e-3[m*K]参数化几何尺寸参数化网格元素大小参数扫描变量,主要有两种类型变量:内部保留变量和用户自定义变量,变量可以是标量也可以是字段,可以有单位。
原文地址:COMSOL-RF模块高频电磁场分析中的波源定义作者:COMSOL中国在高频电磁场计算中,波源设定是一类常见问题。
在光学领域,电磁波源类型很多,比如各种激光器(连续的脉冲的,直接出射的,波导输出的,Gaussian/Bessel/Flat-top/Lorentz等等),荧光分子在外加激光照射下发光;微波领域中的天线,矩形波导出射波源之类。
当计算一束已知的高斯光束照射到散射体上的电磁场分布时,光束既可以用背景场定义在计算域内,也可以定义在边界上。
分子荧光,天线等有时能够简化为点辐射的情况,可通过点源定义。
此外,可通过边电流定义边界辐射源。
电场还是磁场根据Maxwell方程,电场与磁场之间满足法拉第定律,定义电场时磁场便确定下来,所以这里我们只考虑电场的定义。
表达式自定义无论定义哪一种源,都无外乎把源的模值,或是矢量的各个分量写成表达式或函数,这一点与其他物理量一致。
定义方法请参考“COMSOL_Multiphysics函数定义用户指南”。
是否要加时间项电磁场求解研究类型分为频域和时域,两者的波源设定不同。
频域计算时,默认所有矢量场值,包括电场、磁场、电流都以相同频率随时间简谐变化。
因此,场值均是以空间为变量,不包含时间部分,而在时域计算时,光源定义需要给出时间部分的表达式。
以一个单频边界电场源为例,频域中定义E(x,y,z),时域定义是E(x,y,z)*exp(i*omega*t),其中omega是简谐变化的角频率。
我们将电场源定义分为空间和时间分别讨论:1. 空间部分a.点源:点偶极子(Electric point dipole)/简化磁流源(Magnetic current),下图中画出了两种点源附近的电场矢量方向图,可从分布判断选择哪一种定义。
点偶极子(Electric pointdipole)磁流(Magneticcurrent)b. 边界源:边界电流、电场、磁流易于理解,此处略。
Comsol中脉冲函数产生方法
方法一
方波函数+解析函数
1. 先生成一个方波函数,函数名rect1,如下图,定义下限为0,上限为a,图中a=5e-4。
上限a与之后要生成的脉冲函数的脉宽有关。
2. 第二步,生成一个解析函数,函数名an1,表达式:rect1(mod(t,T)*b),其中t为变量,T
为脉冲函数的周期,b与脉宽相关,a/b=脉宽。下图中,T=0.1, b=0.1。
方法二
解析函数
1. 如果不想用方波函数,则单独使用解析函数也能得到脉冲函数。这时需用到if条件算子。
2. 生成一个解析函数an2,表达式:if(expr1,1,0),满足表达式expr1为真时,函数值取1,
否则,函数值取0。