Interview summary of mechanical and electrical courses - KozoroFan/Daily-learning GitHub Wiki

#机电产品设计

  • 机电产品设计的步骤?

发现需求、项目规划、产品定义、原理方案设计、产品详细设计、产品支持。

#机械原理

  • 运动副的定义与类型?

运动副是指两个构件直接接触又能产生一定相对运动的连接。运动副按照两构件接触特性分为低副和高副,其中,低副是指两个运动构件通过面接触而构成的运动副,包括转动副和移动副。高度是指两个运动构件通过点或线接触而构成的运动副。

  • 平面机构自由度的计算?

F=3n-2Pl-Ph。其中,n为自由构件数目,Pl为低副数目,Ph为高副数目。

  • 机构具有确定运动形式的条件?

机构的自由度必须大于零,且机构原动件的数目必须等于机构的自由度。

  • 速度瞬心的特点以及三心定理?

特点:瞬心是两构件在任一瞬时相对速度为零的重合点;瞬心是两构件在任一瞬时绝对速度相同的点;如果两构件都是运动的,其瞬心成为相对瞬心;如果两构件有一个是静止的,其瞬心成为绝对瞬心。 三心定理:彼此做平面运动的三个构件具有三个瞬心,且三个瞬心在同一直线上。

  • 机械效率的概念?

工程中将输出功与输入功的比值成为机械效率,它反映了输入功率在机械中有效利用的程度。

  • 机械自锁现象的概念?

若作用在机械上的驱动力增加到无穷大,都无法使机械沿着驱动力作用的方向运动的现象叫作自锁。

  • 铰链四杆机构的基本形式?

曲柄摇杆机构,双曲柄机构,双摇杆机构。

  • 铰链四杆机构中曲柄存在的条件?

各杆的长度满足杆长条件(最短杆与最长杆之和小于或等于其他两杆之和);连架杆与机架中必有一杆为最短杆。

  • 什么时候能得到曲柄摇杆机构,双曲柄机构和双摇杆机构?

当铰链四杆机构满足杆长条件时,取最短杆为连架杆得到曲柄摇杆机构,取最短杆为机架得到双曲柄机构,取最短杆为连杆得到双摇杆机构,当不满足杆长条件是一定得到双摇杆机构。 

  • 曲柄摇杆机构的急回运动特性?

曲柄摇杆机构中,当曲柄运动一周时,将有两次与连杆共线,此位置成为极限位置,曲柄在两次极限位置的夹角成为极位夹角θ。当曲柄做匀速转动时,摇杆做往复摆动,并且很明显返程速度大于往程速度,这一特性成为急回特性。并且,极位夹角θ越大,急回特性越显著。

  • 曲柄摇杆机构的死点位置以及应对措施?

曲柄摇杆机构中,当曲柄位于极限位置时,连杆作用于曲柄上的力恰好通过转动中心,因此无论作用力多大,也不能推动曲柄转动,机构的这种位置成为死点位置。为使机构闯过死点位置继续运转,必须采用适当措施,如缝纫机机构中安装飞轮,借助惯性力闯过死点。机车车轮联动机构中采用两组以上的相同机构组合使用,使各组机构死点位置相互错开排列。

  • 凸轮机构的运动形式?

升——停——降——停。凸轮转动过程中,推杆从最低位置被推到最高位置称为推程,相应凸轮转过的角度称为推程运动角。凸轮继续转动,推杆在最高位置保持不变称为远休止,相应凸轮转过的角度称为远休止角,凸轮继续转动,推杆从最高位置被推到最低位置称为回程,相应凸轮转过的角度称为回程运动角,凸轮继续转动,推杆在最低位置保持不变称为近休止,相应凸轮转过的角度称为近休止角。 

  • 凸轮轮廓线设计的工作原理?

反转法原理,假设凸轮静止不动,让推杆一方面绕凸轮反转,一方面又在导轨内作预期的往复运动,这样,其尖顶的运动轨迹就是凸轮轮廓线。

#材料力学

  • 基本假设:

连续性、均匀性、各项同性、小变形。 

  • 杆件的四种基本变形:

拉压、剪切、弯曲、扭转。 

  • 材力研究问题的主要手段:

静力平衡条件、物理条件、变形协调条件(几何条件)。 

  • 角应变如何定义?为什么不能以某点微直线段的转角来定义某点的角应变?

某点处两垂直微直线段的相对转角;排除刚性转动的影响。 

  • 冷作硬化对材料有何影响?

提高材料的屈服应力。 

  • 什么是圆杆扭转的极限扭矩?

使圆杆整个横截面的切应力都达到屈服极限时所能承受的扭矩。 

  • 杆件纯弯曲时的体积是否变化?

拉压弹性模量不同时体积会发生变化。 

  • 材料破坏的基本形式:

流动、断裂 

  • 四大强度理论?哪些是脆性断裂的强度理论,哪些是塑性屈服的强度理论?

最大拉应力理论:这一理论认为引起材料脆性断裂破坏的因素是最大拉应力,无论什么应力状态,只要构件内一点处的最大拉应力σ1达到单向应力状态下的极限应力σb,材料就要发生脆性断裂。于是危险点处于复杂应力状态的构件发生脆性断裂破坏的条件是:σ1=σb。σb/s=[σ],所以按第一强度理论建立的强度条件为:σ1≤[σ]。  

最大伸长线应变理论:这一理论认为最大伸长线应变是引起断裂的主要因素,无论什么应力状态,只要最大伸长线应变ε1达到单向应力状态下的极限值εu,材料就要发生脆性断裂破坏。εu=σb/E;ε1=σb/E。由广义虎克定律得:ε1=[σ1-u(σ2+σ3)]/E,所以σ1-u(σ2+σ3)=σb。按第二强度理论建立的强度条件为:σ1-u(σ2+σ3)≤[σ]。

最大切应力理论:这一理论认为最大切应力是引起屈服的主要因素,无论什么应力状态,只要最大切应力τmax达到单向应力状态下的极限切应力τ0,材料就要发生屈服破坏。τmax=τ0。依轴向拉伸斜截面上的应力公式可知τ0=σs/2(σs——横截面上的正应力)由公式得:τmax=τ1s=(σ1-σ3)/2。所以破坏条件改写为σ1-σ3=σs。按第三强度理论的强度条件为:σ1-σ3≤[σ]。

形状改变比能理论:这一理论认为形状改变比能是引起材料屈服破坏的主要因素,无论什么应力状态,只要构件内一点处的形状改变比能达到单向应力状态下的极限值,材料就要发生屈服破坏。发生塑性破坏的条件,所以按第四强度理论的强度条件为:sqrt(σ1^2 +σ2^2 +σ3^2-σ1σ2-σ2σ3-σ3σ1)<[σ]

  • 斜弯曲

梁弯曲后挠曲线所在平面与载荷作用面不在同一平面上。 

  • 压杆失稳时将绕那根轴失稳?

惯性矩最小的形心主惯性轴。 

  • 应力集中是什么意思?

弹性力学中的一类问题,指物体中应力局部增高的现象,一般出现在物体形状急剧变化的地方,如缺口、孔洞、沟槽以及有刚性约束处。应力集中能使物体产生疲劳裂纹,也能使脆性材料制成的零件发生静载断裂。在应力集中处,应力的最大值(峰值应力)与物体的几何形状和加载方式等因素有关。局部增高的应力随与峰值应力点的间距的增加而迅速衰减。由于峰值应力往往超过屈服极限(见材料的力学性能)而造成应力的重新分配,所以,实际的峰值应力常低于按弹性力学计算得到的理论峰值应力。

#理论力学

  • 什么是惯性系?

无角加速度和线加速度的坐标系为惯性系。 

  • 什么是虚位移?虚功?

某瞬时,质点系在约束允许的条件下可能实现的任何无限小的位移为虚位移。 力在虚位移上所做功为虚功。 

  • 什么是虚位移原理?

对于具有理想约束的质点系,其平衡的充要条件是:作用于质点系的所有主动力在任何虚位移中所作虚功之和为0。 

#电工电子学(涉及传感器相关知识)

  • 本征半导体和杂质半导体?

本征半导体或称纯净半导体,即无杂质,无位错,晶格完整,没有任何缺陷的单晶体结构的半导体,如半导体硅。杂质半导体是指在本征半导体中掺入其他微量元素,以增强半导体导电性能的半导体。根据掺入杂质的不同,分为N型半导体和P型半导体。

N型半导体:在本征半导体硅(或锗)中掺入微量的五价元素磷(P),这种杂质半导体以电子导电为主,故称为电子型半导体或N型半导体,其中,自由电子为多数载流子(多子),空穴为少数载流子(少子)。

P型半导体:在本征半导体硅(或锗)中掺入微量的三价元素硼(B),这种杂质半导体以空穴导电为主,故称为空穴型半导体或P型半导体,其中,空穴为多数载流子(多子),自由电子为少数载流子(少子)。 

  • PN结以及其单向单调性?

通过某种工艺过程使P型半导体和N型半导体结合在一起,在半导体交界面附近就形成了PN结。PN结是构成半导体器件的基础。PN结的单向导电性:PN结正向偏置时(外电源正极接P型区,负极接N型区)呈现低阻性,正向电流较大,此时PN结处于正向导通状态,PN结反向偏置时(外电源正极接N型区,负极接P型区)呈现高阻性,反向电流较小,此时PN结处于反向截止状态。 

  • 二极管

构成:二极管由PN结加上欧姆接触电极、两端引出线和管壳封装而成,接在P型区的引出线叫做阳极A,接在N型区的引出线叫做阴极K。 伏安特性:二极管的管压降U与其电流I的关系曲线,叫做二极管的伏安特性曲线。

正向特性:外加电压小于死区电压时,正向电流和电压很小,呈现电阻较大,;外加电压大于死区电压时,电流按指数规律迅速增长,而正向电流在小范围内变化,呈现电阻很小。

反向特性:反向电压小于反向击穿电压时,电流很小;反向电压大于反向击穿电压时,反向电流剧增,这时二极管被反向击穿。 分析方法:二极管正向偏置时存在管压降,理想情况下,取管压降为零,二极管用短路线代替。反向偏置时(小于反向击穿电压时)有漏电流,理想情况下,取漏电流为零,二极管处于断路状态。 二极管的单向导电性可以用来整流、检波、限幅和钳位等。 

  • 稳压管

稳压管是一种特殊的二极管,结构与二极管相同,专门工作在反向击穿状态,它利用PN结反向击穿后陡直的特点,在电路中起稳压作用。当稳压管正向偏压时,其特性和普通二极管一样,反向偏压时,开始一段和二极管一样,当反向电压大到一定数值以后,反向电流突然上升,

而且电流在一定范围内增长时,管子两端电压只有少于增长,变化很小,具有稳压性能,并且这种“反向击穿”是可以恢复的。 

  • 晶体管

在纯净半导体基片上,按生产工艺扩散杂质制成两个紧密相关的PN结,分三个区,引出三个电极。在两个PN结中间区域为基区,由基区引出的电极叫基极,掺杂浓度较小。基区两侧分别是发射区和集电区,与基区接触面积较小且掺杂浓度较大的区域叫发射区,引出的电极叫发射极。另一侧掺杂浓度较小,接触面较大的区域叫集电区,相关的引出线叫集电极。 按掺杂方式不同制成的晶体管分为NPN型和PNP型。 

  • 零点漂移问题

一个理想的直接耦合放大器,当输入信号为零时,其输出端的电压变化量应为零。而一个实际的直接耦合多级放大电路,当输入信号Ui为零时,输出端电压变化量不为零,而是不规则地缓慢变化着,这种现象就叫零点漂移,简称零漂。引起零漂的原因很多,其中以温度引起的零漂尤为严重,称之为温漂,故常常认为零漂就是温漂。抑制零漂最有效的方法是采用差动电路。 

  • 集成电路的概念

集成电路是利用半导体的制造工艺,把管子、电阻、电容及电路连线等做在一个半导体基片上,形成不可分割的固体块。集成电路中,元件密度高、连线短、焊点少、外部引线少,因此大大提高了电子线路及电子设备的灵活性和可靠性。 

  • 线性集成电路的特点

集成电路中一般都采用直接耦合的电路结构,而不采用阻容耦合结构。 

集成电路的输入级采用差动放大电路,其目的是为了克服直接耦合电路的零漂。 

NPN管和PNP管配合使用,从而改进单管的性能。 

大量采用恒流源来设置静态工作点或做有源负载,用以提高电路性能。 

  • 信噪比

信噪比=信号功率/噪声功率。信噪比越大,则干扰和噪声的影响越小,如果信噪比太小,则输出端的信号和噪声将难以区别。 

  • 直流稳压器的原理图

交流电源→变压器→整流电路→滤波电路→稳压电路→负载。 变压器:将交流电源电压变换为符合整流电路所需要的交流电压。整流电路:利用具有单向导电性的整流元件(整流二极管,晶闸管等),将交流电压变换成单向脉动直流电压。滤波电路:减

小整流电压的脉动程度,供给负载平滑的直流电压。稳压电路:在交流电源电压波动或负载变化时,通过该电路的自动调解作用,使直流输出电压稳定。 

  • 滤波电路

常用的滤波电路有电容滤波电路(利用电容电压不能突变的原理通过输出电容两端电压波形而达到减小电压脉动程度)、电感滤波电路(利用电感电流不能突变的原理通过输出电感电流波形而达到减小电流脉动程度)、π形滤波电路。 

  • 变压器

变压器是利用电磁感应原理,将一种交流电压等级的电能转换成同频率的另一种交流电压等级的电能。主要有铁心和绕组两部分组成,贴心是变压器的磁路部分,绕组是变压器的电路部分,接电源的绕组称为一次绕组,接负载的绕组称为二次绕组。 

耦合电感:当把一个电感线圈放在另一个通有变动电流的线圈附近时,本线圈将产生感应电动势,这种现象称为互感现象,所产生的感应电动势称为互感电动势。 若变压器一次绕组的磁通全部通过二次绕组,二次绕组的磁通也全部通过一次绕组。即耦合系数K=1,称这种状态为全耦合。 

理想变压器特性:耦合系数K=1;变压器本身无任何损耗③自电感和互电感均为无穷大,但√L1/L2=n1/n2。

在理想变压器下:U1/U2=n1/n2。I1/I2=n2/n1。

#微机原理与接口技术

  • 源码反码补码的联系

机器数与真值:一个数在计算机中的二进制表示形式,  叫做这个数的机器数。机器数是带符号的,在计算机用一个数的最高位存放符号, 正数为0, 负数为1。因为第一位是符号位,所以机器数的形式值就不等于真正的数值,为区别起见,将带符号位的机器数对应的真正数值称为机器数的真值。

计算机要使用一定的编码方式进行存储。原码, 反码, 补码是机器存储一个具体数字的编码方式。

原码(机器数)就是符号位加上真值的绝对值, 即用第一位表示符号, 其余位表示值。 反码的表示方法是:正数的反码是其本身;负数的反码是在其原码的基础上, 符号位不变,其余各个位取反。

补码的表示方法是:正数的补码就是其本身;负数的补码是在其原码的基础上, 符号位不变, 其余各位取反, 最后+1。(即在反码的基础上+1)

  • 8086基本结构

EU BIU工作情况:EU负责执行指令,BIU负责与储存器和I/O接口传送消息

EU BIU并行工作的优点:指令队列的存在使8086/8088的EU和BIU并行工作,从而减少了CPU为取指令而等待的时间,提高了CPU的利用率,加快了整机的运行速度。另外也降低了对存储器存储速度的要求,这种技术是借鉴大型机结果。在整个程序运行期间,BIU总是忙碌的,效率很高。

  • 分时复用

引脚的分时复用是指一个引脚在不同时刻传送不同的信息,比如,在一个总线周期里既传送地址又传送数据。

ALE为地址所存允许信号,高电平有效时,把地址-数据线上出现的地址信号锁存到地址锁存器中。

DEN为数据允许信号,低电平有效时该信号允许数据的输入或输出。

在总线的T1状态,输出地址信息,ALE输出一个正脉冲,它的下降沿把地址信息打入锁存器中;当DEN变为低电平时,说明引脚上出现数据信息。

  • 8088/8086内部寄存器

8086/8088CPU内部有14个16位寄存器,按功能可分为三类:通用寄存器(8个)、段寄存器(4个1)和控制寄存器(2个)

通用寄存器:数据寄存器: AX、BX、CX、DX; 地址指针寄存器: SP、BP; 变址寄存器: SI、DI;

段寄存器: CS(IP)DS(BX、SI、DI或一个16位数)、SS(SP或BP)、ES( DI(用于字符串操作指令))

控制寄存器: IP、 FLAGS

数据寄存器一般用于存放参与运算的操作数或运算结果。每个数据寄存器都是16位的,但又可将高、低八位分别作为两个独立的8位寄存器来用。高8位分别记为AH、BH、CH、DH,低8位分别记为AL、BL、CL、DL。

【注意】:8086/8088CPU的14个寄存器除了这4个16位寄存器能分别当作两个8位寄存器来用之外,其他寄存器都不能这样使用。

累加器 AX(Accumulator): 用该寄存器存放运算结果,可提高指令的执行速度,所有的I/O指令都使用该寄存器与外设端口交换信息。

基址寄存器 BX(Base): 8086/8088CPU中有两个基址寄存器BX和BP。BX用来存放操作数在内存中数据段内的偏移地址,BP用来存放操作数在堆栈段内的偏移地址。

计数器 CX(Counter): 在设计循环程序时,使用该寄存器存放循环次数,可使程序指令简化,有利于提高程序的运行速度。

数据寄存器 DX(Data): 在寄存器间接寻址的I/O指令中存放I/O端口地址;在做双字长乘除法运算时,DX与AX一起存放一个双字长操作数,其中DX存放高16位数。

堆栈指针寄存器 SP(Stack Pointer): 在使用堆栈操作指令(PUSH 或 POP)对堆栈进行操作时,每执行一次进栈或出栈操作,系统会自动将SP的内容减2或加2,以使其始终指向栈顶。

基址寄存器 BP(Base Pointer): 作为通用寄存器,它可以用来存放数据,但更经常更重要的用途是存放操作数在堆栈段内的偏移地址。

源变址寄存器 SI(Source Index)

目的变址寄存器 DI(Destination Index): 这两个寄存器通常用在字符串操作时存放操作数的偏移地址,其中SI存放源串在数据段内的偏移地址,DI存放目的串在附加数据段内的偏移地址。

为了对1M个存储单元进行管理,8086/8088对存储器进行分段管理,即将程序代码或数据分别放在代码段、数据段、堆栈段或附加数据段中,每个段最多可达64K个存储单元。段地址分别放在对应的段寄存器中,代码或数据在段内的偏移地址由有关寄存器或立即数给出。

代码段寄存器 CS(Code Segment): 用来存储程序当前使用的代码段的段地址。CS的内容左移四位再加上指令指针寄存器IP的内容就是下一条要读取的指令在存储器中的物理地址。

数据段寄存器 DS(Data Segment): 数据段寄存器。用来存储程序当前使用的数据段的段地址。DS的内容左移四位再加上按指令中存储器寻址方式给出的偏移地址即得到对数据段指定单元进行读写的物理地址。

堆栈段寄存器 SS(Stack Segment): 堆栈段寄存器。用来存储程序当前使用的堆栈段的段地址。堆栈是存储器中开辟的按先进后出原则组织的一个特殊存储区,主要用于调用子程序或执行中断服务程序时保护断点和现场。

附加数据段寄存器 ES(Extra Segment): 附加数据段寄存器。用来存储程序当前使用的附加数据段段的段地址。附加数据段用来存放字符串操作时的目的字符串。

指令指针寄存器 IP(Instruction Pointer): 用来存放下一条要读取的指令在代码段内的偏移地址。用户程序不能直接访问IP。

标志寄存器 FLAGS: 它是一个16位的寄存器,但只用了其中的9位,包括6个状态标志位和3个控制标志位。

状态标志位CF(Carry Flag)、PF(Parity Flag)、AF(Auxiliary Flag)、ZF(Zero Flag)、SF(Sign Flag)、OF(Overflow Flag)

CF: 进位标志位当进行加减运算时 ,若最高位发生进位或借位,则CF为1,否则为0。该标志位通常用于判断无符号数运算结果是否超出了计算机所能表示的无符号数的范围。

PF: 奇偶标志位 ,当指令执行结果的低8位中含有偶数个1时,PF为1,否则为0。

AF:辅助进位标志位, 当执行一条加法或减法运算指令时,若结果的低字节的低4位向高4位有进位或借位,则AF为1,否则为0。

ZF: 零标志位,若当前的运算结果为0,则ZF为1,否则为0。

SF:符号标志位,若运算结果的最高位为1,SF=1,否则为0。

OF: 溢出标志位,当运算结果超出了带符号数所能表示的数值范围,溢出时OF=1,否则为0。通常用来判断带符号数运算结果是否溢出。

控制标志位有三个: TF(Trap Flag)、IF(Interrupt Flag)、DF(Direction Flag)用于控制CPU的操作,由程序设置或清除

TF: 跟踪(陷阱)标志位,是为测试程序的方便而设置。若将TF置1,CPU处于单步工作方式 。

IF: 中断允许标志位,是用来控制可屏蔽中断的控制标志位。若将IF置1,表示允许CPU接受外部从INTR引脚上发来的可屏蔽中断请求;若用CLI指令将IF清0,则禁止CPU接受可屏蔽中断请求信号。

DF: 方向标志位,若将DF置为1,串操作按减地址方式进行,也就是说,从高地址开始,每操作一次地址自动递减;否则按增地址方式进行。

  • 8086的重要引脚

NMI(Non-MaskableInterrupt): 非屏蔽中断申请输入端,输入信号必须是一个上升沿,这类中断是一种不可用软件屏蔽的中断。

INTR(INterrupt Request): 可屏蔽中断申请输入端,输入信号高电平有效,这类中断可用于软件屏蔽。

  • 寻址方式

立即寻址、寄存器寻址、直接寻址、寄存器间接寻址、变址寻址、基址寻址、基址—变址寻址

  • 几个主要的指令

数据传送指令:MOV  PUSH/POP  XCHG  XLAT

输入输出指令:IN  OUT

目的地址传送指令:LEA(主要的)

算术运算指令和逻辑运算指令:算术主要看加减  乘除了解一下目标操作数和源操作数位数的规定

移位指令

串操作

循环控制指令 LOOP

  • 子程序与调用中断服务程序有什么不同

一般子程序的最后一条指令为RET,而中断处理子程序为IRET 

一般子程序通过CPU调用,而中断处理程序则由外部中断引起

一般子程序调用只保护下一条指令的地址,而中断处理程序还要保护标志寄存器的内容

  • 半导体存储器的分类

只读储存器(ROM):ROM、PROM、光擦除PROM(EPROM)、电擦除PROM(EEPROM)、闪速存储器(FLASHROM)

随机读写存储器(RAM):MOS(静态RAM-SPAM和动态RAMD-RAM)、双极型

  • 半导体存贮器的主要指标

容量、存取速度

  • 矩阵式RAM结构的优点

节省存储单元、节省地址空间

  • 动态RAM为什么要刷新

DRAM存放的信息靠的是电容C,电容C有电荷时,为逻辑1,没有电荷时为逻辑0。但由于任何电容,都存在漏电,因此,当电容

C存有电荷时,过一段时间由于电容的放电过程导致电荷流失,信息也就丢失,解决的办法是刷新,即每隔一定时间就要刷新一次,使原来

处于逻辑电平1的电容的电荷又得到补充,而原来处于电平0的电容任保持0。

  • 什么是高速缓冲存储技术和虚拟存储技术

高速缓冲存储就是在CPU与常规主存储器之间增设一级或者两级高速小容量存储器以加快运算速度的技术。 

虚拟存储技术就是通过软件和硬件的结合,即通过在内外存储器之间增设一定的硬件和软件的支持来扩大用户存储空间的技术。

  • 双口RAM有什么用途?它的特点是什么?

双端口RAM用于告诉共享数据缓存器系统中;特点是两个端口都可以独立读/写的静态存储器,实际上它是作为双CPU系统的公共全局存储器来使用的,例如可用于多机系统通信缓冲器,DSP系统和高速磁盘控制器等。

  • 串行EEPROM有什么特点

EEPROM的典型优点是非挥发性、可字节擦除、编程速度快(一般小于10ms)。对EEPROM编程无需将EEPROM从系统中移除,从而使存储和刷新数据(或编程)非常方便、有效、可行。EEPROM还使得通过无线电或导线进行远距离编程成为可能,消除了EPROM的紫外光擦除窗口,封装成本低,而且测试简单。串行EEPROM的优点是管脚少、使用方便。

  • I/O接口的定义和功能

定义:接口是连接计算机和I/O设备的部件,首先是只接口电路,广义的接口还包括接口电路的管理驱动程序 

功能:信号的形式变换、电平转换和放大、锁存及缓冲、I/O定向、并行及串行I/O的转换

  • I/O的内容分类

数据信息、状态信息、控制信息

  • 端口的定义及分类

定义:端口是I/O接口中可以读写的存储电路。分类: 

数据端口:数据端口是CPU和I/O设备传送数据信息的中转站 

状态端口:CPU通过读状态端口了解I/O设备的工作状态

控制端口:对I/O设备的控制命令通过写控制端口发出 

  • I/O编址的分类

存储器映像编制:从存储器地址中分出一部分给I/O端口使用,每个I/O端口被看成一个存储器单元,于是可以用访问存储器的方法来访问I/O端口,即I/O的存储器映像编址I/O

端口单独编址:是指CPU使用专门的I/O指令及控制信号进行I/O。

  • I/O的控制方式

直接传送方式、查询方式、中断方式、直接存贮器访问方式

  • AEN

DMA地址有效输出信号,高电平有效,表明系统进入DMA模式

  • CPU处理中断的过程

中断请求---中断响应-----断点保护----中断识别----现场保护----中断服务----恢复现场----中断返回

  • 中断功能

实现中断与返回、对中断申请进行控制、实现优先权的排队、寻找中断源(即找到中断程序的入口地址)

  • 什么是中断矢量表及中断矢量表的功能

中断矢量就是中断服务程序的入口地址。8086的中断系统能够处理256个不同的中断,每一个中断安排一个编号(0-255),称为中断类型。每一种中断类型对应的中断服务程序的入口地址称为中断矢量。把系统中所有的中断矢量按中断类型从小到大的顺序放到存储器特定的区域,该区域称为中断矢量表。每个中断矢量在终端矢量表中占用4个字节,CPU响应中断后,通过将中断矢量类型乘以4得到中断矢量在中断矢量表中的首地址,在中断矢量表中连续取4个单元的内容分别赋给IP、CS,于是就开始执行中断服务程序。

  • 单工通信和双工通信

单工通信:一个设备固定发送,另一个设备固定接收,二者之间只有一条通信通道

半双工通信:两个设备可以双向通信,但要分时使用同一条通信通道

全双工通信:两个设备之间有两条通信通道,可同时双向通信

  • 异步串行通信的格式

开始前,线路处于空闲状态,送出连续1.传送开始时首先发一个0作为起始位,然后出现在通信线上的是字符的二进制数据的最低为D0。每个字符的数据位长可以约定为5位、6位、7位或8位,一般采用ASCII码后面是奇偶校验位,率先约定,发送方用奇偶检验将每个传送字符中为1的位数凑成奇数或者偶数个,供接收方进行奇偶检查。也可以约定不要奇偶检验,这样就取消奇偶校验位。最后是表示停止位的1信号,这个停止位可以约定持续1位、1.5位或2位的时间宽度。至此一个字符传送完毕,线路又进入空闲,持续为1.经过一段随机的时间后,下一个字符又发出起始位开始传送。

  • RS-232的电平规定

-3V到-25V之间的电平表示逻辑1;+3V到+25V之间的电平表示逻辑0。(因此这是一套负逻辑定义)

  • 串行接口的种类

RS-232接口、RS-485接口、USB接口、SPI接口

  • 直接存储器访问(DMA)方式的本质特征

外部设备不经过CPU直接对存储器进行访问的一种数据传送模式。利用系统总线,由外设直接对存储器进行读出或写入,以最大限度提高存储器与外部设备之间的数据传输率。

  • 简述异步串行通信中是如何解决同步问题和实现正确采样的

采用相反极性的起始位与停止位

接收器在每位码元的中心进行采样

接收器采用比传送波特率更高的频率时钟来控制采样时间,以提高分辨率和抗干扰能力

  • 模拟输入通道的组成部分及常用功能

典型的模拟量输入通道由以下五部分组成:传感器、信号处理环节、多路转换开关、采样保持器和A/D转换器。

传感器:能够把生产过程的非典物理量转换成电量,有些研究部门和生产厂家已研究生产出各种变送器,将传感器输出的微弱电信号或电阻值等非典电信号转换成统一电流信号或电压信号。

信号处理环节:一方面,将传感器输出的信号放大或处理成与A/D转换器所要求的输入相适应的电压水平。另一方面,传感器与现场信号相连接,处于恶劣工作环境,其输出叠加有干扰信号,因此信号处理用于去除干扰信号。

多路转换开关:要监测和控制的模拟量往往不止一个,为了节约投资,可以用多路模拟开关,使多个模拟信号公用一个A/D转换器进行采样和转换。

采样保持器:在A/D进行转换期间,保持采样输入信号的大小不变。

A/D转换器:将模拟量转换成数字量,以便由计算机读取,进行分析处理。

  • 模拟输出通道的组成部分及常用功能

典型的模拟量输出通道由一下三部分组成:锁存器、D/A转换器、放大驱动。

锁存器:计算机输出的数据在总线上稳定的时间很短,用锁存器保持数字量的稳定。

D/A转换器:把计算机输出的数字量转换成模拟量。

放大驱动:提高驱动能力,用于驱动外设。

  • A/D转换器的主要参数

分辨率:反应A/D转换器对输入微小变化响应的能力,通常用数字输出最低位(LSB)所对应的模拟输入的电平值表示。

精度:绝对精度、相对精度。

转换时间:是指完成一次A/D转换所需的时间,即由发出启动转换命令信号到转换结束信号开始有效的时间间隔。

电源灵敏度:是指A/D转换芯片的供电电源的电压发生变化时,产生的转换误差。

量程:是指所能转换的模拟输入电压范围,分单极性、双极性两种类型。

输出逻辑电平:多数A/D转换器的输出电平与TTL(+5V等价于逻辑“1”,0V等价于逻辑“0”)电平兼容。在考虑数字量输出与微处理器的数据总线接口时,应注意是否要三态逻辑输出,是否要对数据进行锁存等。

关于TTL电平:数字电路中,由TTL电子元器件组成电路使用的电平。电平是个电压范围,规定输出高电平>2.4V,输出低电平<0.4V。在室温下,一般输出高电平是3.5V,输出低电平是0.2V。最小输入高电平和低电平:输入高电平>=2.0V,输入低电平<=0.8V,噪声容限是0.4V。

工作温度范围:由于温度会对比较器、运算放大器、电阻网络等产生影响,故只在一定的温度范围内才能保证额定精度标准。

#机电传动

工业机器人电动伺服系统的一般结构为三个闭环控制,即电流环、速度环和位置环。一般情况下,对于交流伺服驱动器,可通过对其内部功能参数进行人工设定而实现位置控制、速度控制、转矩控制等多种功能。

  • 如何正确选择伺服电机和步进电机?

主要视具体应用情况而定,简单地说要确定:负载的性质(如水平还是垂直负载等),转矩、惯量、转速、精度、加减速等要求,上位控制要求(如对端口界面和通讯方面的要求),主要控制方式是位置、转矩还是速度方式。供电电源是直流还是交流电源,或电池供电,电压范围。据此以确定电机和配用驱动器或控制器的型号。

  • 选择步进电机还是伺服电机系统?

其实,选择什么样的电机应根据具体应用情况而定,各有其特点。

  • 如何配用步进电机驱动器?

根据电机的电流,配用大于或等于此电流的驱动器。如果需要低振动或高精度时,可配用细分型驱动器。对于大转矩电机,尽可能用高电压型驱动器,以获得良好的高速性能。

  • 2相和5相步进电机有何区别,如何选择?

2相电机成本低,但在低速时的震动较大,高速时的力矩下降快。5相电机则振动较小,高速性能好,比2相电机的速度高30~50% ,可在部分场合取代伺服电机。

  • 何时选用直流伺服系统,它和交流伺服有何区别?

直流伺服电机分为有刷和无刷电机。

有刷电机成本低,结构简单,启动转矩大,调速范围宽,控制容易,需要维护,但维护方便(换碳刷),产生电磁干扰,对环境有要求。因此它可以用于对成本敏感的普通工业和民用场合。

无刷电机体积小,重量轻,出力大,响应快,速度高,惯量小,转动平滑,力矩稳定。控制复杂,容易实现智能化,其电子换相方式灵活,可以方波换相或正弦波换相。电机免维护,效率很高,运行温度低,电磁辐射很小,长寿命,可用于各种环境。

交流伺服电机也是无刷电机,分为同步和异步电机,目前运动控制中一般都用同步电机,它的功率范围大,可以做到很大的功率。大惯量,最高转动速度低,且随着功率增大而快速降低。因而适合做低速平稳运行的应用。

  • 使用电机时要注意的问题?

上电运行前要作如下检查:

电源电压是否合适(过压很可能造成驱动模块的损坏);

对于直流输入的 +/- 极性一定不能接错,驱动控制器上的电机型号或电流设定值是否合适(开始时不要太大);

控制信号线接牢靠,工业现场最好要考虑屏蔽问题(如采用双绞线);

不要开始时就把需要接的线全接上,只连成最基本的系统,运行良好后,再逐步连接;

一定要搞清楚接地方法,还是采用浮空不接;

开始运行的半小时内要密切观察电机的状态,如运动是否正常,声音和温升情况,发现问题立即停机调整。

  • 步进电机启动运行时,有时动一下就不动了或原地来回动,运行时有时还会失步,是什么问题?

一般要考虑以下方面作检查:

电机力矩是否足够大,能否带动负载,因此我们一般推荐用户选型时要选用力矩比实际需要大 50%~100% 的电机,因为步进电机不能过负载运行,哪怕是瞬间,都会造成失步,严重时停转或不规则原地反复动;

上位控制器来的输入走步脉冲的电流是否够大(一般要 >10mA ),以使光耦稳定导通,输入的频率是否过高,导致接收不到,如果上位控制器的输出电路是CMOS 电路,则也要选用 CMOS 输入型的驱动器。

启动频率是否太高,在启动程序上是否设置了加速过程,最好从电机规定的启动频率内开始加速到设定频率,哪怕加速时间很短,否则可能就不稳定,甚至处于惰态;电机未固定好时,有时会出现此状况,则属于正常。因为,实际上此时造成了电机的强烈共振而导致进入失步状态。电机必须固定好;对于 5 相电机来说,相位接错,电机也不能工作。

  • 我想通过通讯方式直接控制伺服电机,可以吗?

可以的,也比较方便,只是速度问题,用于对响应速度要求不太高的应用。如果要求快速的响应控制参数,最好用伺服运动控制卡,一般它上面有DSP 和高速度的逻辑处理电路,以实现高速高精度的运动控制。如 S 加速、多轴插补等。

  • 用开关电源给步进和直流电机系统供电好不好?

一般最好不要,特别是大力矩电机,除非选用比需要的功率大一倍以上的开关电源。因为,电机工作时是大电感型负载,会对电源端形成瞬间的高压。而开关电源的过载性能不好,会保护关断,且其精密的稳压性能又不需要,有时可能造成开关电源和驱动器的损坏。可以用常规的环形或R 型变压器变压的直流电源。

  • 想用±10V或4~20mA的直流电压来控制步进电机,可以吗?

可以,但需要另外的转换模块。

  • 有一个的伺服电机带编码器反馈,可否用只带测速机口的伺服驱动器控制?

可以,需要配一个编码器转测速机信号模块。

  • 伺服电机的码盘部分可以拆开吗?

禁止拆开,因为码盘内的石英片很容易破裂,且进入灰尘后,寿命和精度都将无法保证,需要专业人员检修。

  • 步进和伺服电机可以拆开检修或改装吗?

不要,最好让厂家去做,拆开后没有专业设备很难安装回原样,电机的转定子间的间隙无法保证。磁钢材料的性能被破坏,甚至造成失磁,电机力矩大大下降。

  • 伺服控制器能够感知外部负载的变化吗?

如遇到设定阻力时停止、返回或保持一定的推力跟进。

  • 可以将国产的驱动器或电机和国外优质的电机或驱动器配用吗?

原则上是可以的,但要搞清楚电机的技术参数后才能配用,否则会大大降低应有的效果,甚至影响长期运行和寿命。最好向供应商咨询后再决定。

  • 使用大于额定电压值的直流电源电压驱动电机安全吗?

正常来说这不是问题,只要电机在所设定的速度和电流极限值内运行。因为电机速度与电机线电压成正比,因此选择某种电源电压不会引起过速,但可能发生驱动器等故障。

此外,必须保证电机符合驱动器的最小电感系数要求,而且还要确保所设定的电流极限值小于或等于电机的额定电流。

事实上,如果你能在你设计的装置中让电机跑地比较慢的话 ( 低于额定电压 ) ,这是很好的。

以较低的电压 ( 因此比较低的速度 ) 运行会使得电刷运转反弹较少,而且电刷 / 换向器磨损较小,比较低的电流消耗和比较长的电机寿命。

另一方面,如果电机大小的限制和性能的要求需要额外的转矩及速度,过度驱动电机也是可以的,但会牺牲产品的使用寿命。

  • 如何为应用选择适当的供电电源?

推荐选择电源电压值比最大所需的电压高 10%-50% 。此百分比因 Kt, Ke, 以及系统内的电压降而不同。驱动器的电流值应该足够传送应用所需的能量。记住驱动器的输出电压值与供电电压不同, 因此驱动器输出电流也与输入电流不相同。为确定合适的供电电流,需要计算此应用所有的功率需求,再增加 5% 。按 I = P/V 公式计算即可得到所需电流值。

推荐选择电源电压值比最大所需的电压高 10%-50% 。此百分比因 Kt, Ke, 以及系统内的电压降而不同。驱动器的电流值应该足够传送应用所需的能量。记住驱动器的输出电压值与供电电压不同, 因此驱动器输出电流也与输入电流不相同。为确定合适的供电电流,需要计算此应用所有的功率需求,再增加 5% 。按 I = P/V 公式计算即可得到所需电流值。

  • 对于伺服驱动器我可以选择那种工作方式?

不同的模式并不全部存在于所有型号的驱动器中

  • 驱动器和系统如何接地?

a. 如果在交流电源和驱动器直流总线(如变压器)之间没有隔离的话,不要将直流总线的非隔离端口或非隔离信号的地接大地,这可能会导致设备损坏和人员伤害。因为交流的公共电压并不是对大地的,在直流总线地和大地之间可能会有很高的电压。

b. 在多数伺服系统中,所有的公共地和大地在信号端是接在一起的。多种连接大地方式产生的地回路很容易受噪音影响而在不同的参考点上产生流。

c. 为了保持命令参考电压的恒定,要将驱动器的信号地接到控制器的信号地。它也会接到外部电源的地,这将影响到控制器和驱动器的工作(如:编码器的5V电源)。

d.屏蔽层接地是比较困难的,有几种方法。正确的屏蔽接地处是在其电路内部的参考电位点上。这个点取决于噪声源和接收是否同时接地,或者浮空。要确保屏蔽层在同一个点接地使得地电流不会流过屏蔽层。

  • 减速器为什么不能和电机正好相配在标准转矩点?

如果考虑到电机产生的经过减速器的最大连续转矩,许多减速比会远远超过减速器的转矩等级。

如果我们要设计每个减速器来匹配满转矩,减速器的内部齿轮会有太多组合 ( 体积较大、材料多 ) 。

这样会使得产品价格高,且违反了产品的“高性能、小体积”原则。

  • 如何选用电动缸、滑台、精密平台类产品?其成本是如何计算的?

选择致动执行器类产品关键要看您对运动参数有什么样的要求,可以根据您需要的应 用来确定具体运动参数等技术条件,这些参数要符合您的实际需要,既要满足应用要求并留有余地,也不要提得太高,否则其成本可能会数倍于标准型产品。举例来说,如果0.1mm精度够用的话,就不要选0.01mm的参数。其它如负载能力、速度等也是如此。

另外一个给用户的选型建议是,如果不是必须,推拉力或负重、速度、定位精度这三个主要参数不要同时要求很高,因为致动执行器是一个高精度高技术的机电一体化产品,我们在设计制造时需要从机械结构、电气性能、材料特性、材质和处理方法等多方面考虑并选择相应的组成电机、驱动控制器和反馈装置,以及不同精度等级的导轨、丝杆、支撑座和其它机械系统,使之达到需要的整体运动参数,可谓牵一发动全身的产品。当然,您有高要求的产品需要,我们还是可以满足,只是成本会相应的提高。

#PLC

  • 什么是PLC?

PLC是在自动化工业中执行离散或顺序逻辑的固态控制装置或计算机工业控制器;

PLC是软硬件的结合。它作为自动控制系统的机器或系统的大脑;

PLC是数字电子设备执行的基本任务;

使用可编程存储器存储指令,实现特定的功能,如编程逻辑、顺序、定时、计数和算术运算控制电子机械与工艺。

  • PLC在自动化中的作用是什么?

在自动化中,PLC起着重要的作用。工业应用的控制与监控.

它既有硬件也有软件,该控制器装置可以自动和手动地执行或操作。由于它的运行,在系统中消耗了更多的人力、时间、效用和精确的操作。这对于提高系统的可靠性和稳定性具有重要意义。它在非常短的时间内执行精确的操作。这是原因之一,今天,PLC被广泛应用于该行业。

  • PLC的基本组成部分是什么?

输入输出模块:这些模块为PLC提供输入并产生输出。输入和输出可以是数字或模拟类型。

电源供应:这个部件负责提供AC或DC电源来操作PLC。

中央处理单元(CPU):CPU存储和执行PLC软件程序。

记忆系统:正如名称所描述的,存储器系统负责存储和检索PLC操作所需的信息。

通信协议:可以有多个设备连接到PLC。通信协议用于将信息从一个设备交换到另一个设备。

PLC编程(软件技巧):你需要编写一个编程语言来实现PLC逻辑。

  • PLC的类型有哪些?

基于PLC有两种基本类型PLC的构造与工作:小型PLC、模块化PLC。

  • 不同的PLC品牌?

各家公司都发明了自己的PLC品牌。以下是一些流行的PLC品牌。

ABB公司、西门子PLC、德尔塔PLC、三菱PLC、欧姆龙PLC、施耐德PLC、日立PLC、法塔克PLC、博世PLC、通用电气公司

  • PLC中使用的编程语言有哪些?

编程语言用于创建控制PLC或自动化系统的程序。根据IEC标准,PLC中使用了五种不同类型的编程语言。在行业中使用的不同的PLC语言列表如下:梯形图(LD)、指令列表(IL)、结构化文本(ST)、功能框图(FBD)、顺序功能图(SFC)

  • 什么是梯级?

在LD编程中,水平线的数目表示为“Rung”。

  • 计时器是什么?

定时器是PLC最基本的指令。定时器用于在特定的持续时间内操作和控制设备。程序员可以根据项目要求设置计时器。

  • RTO的功能是什么?

RTO是一个固定的计时器。RTO的主要功能是保存或存储集合(累积)时间。

  • 计数器是什么?

计数器是用于顺序计数作为数字数的指令。它是数学函数

  • PLC中使用的计数器有什么不同?

Answer:PLC计数器分为三种不同类型:上计数器、、向下计数器、上/下计数器。(在PLC编程中,主要采用上/下计数器)

  • 机架是什么?

Answer:模块化PLC由输入或输出模块的数量、控制器处理器和通信控制器组成。这些模块的硬件组件称为“机架”。

  • 什么是PLC扫描周期?

当PLC程序被执行时,会出现多个重复过程。这是整个过程被称为PLC扫描周期。该扫描程序由读取输入数据、执行编程逻辑和在一个周期中更新输出数据组成。扫描时间是连续扫描程序所需的时间。大约需要10MS-15Ms的时间。

  • 什么是通信协议?

该系统与两个或多个通信设备通信,用于传输数字数据或信息。这种通信是由一组称为“通信协议”的规则来控制的。通信协议的标准定义是管理数据通信的一组规则。

  • PLC中使用的通信协议有哪些不同?

这里有一些标准的PLC通信协议:以太网、PROFIBUS总线、RS-232或RS-485、多点界面、点对点(PPI)、Data Highway (DH)、控制网、设备网络、USB适配器、PC适配器

  • 在自动化中使用哪种类型的传感器?

传感器是一种从物理环境中检测各种参数并将其作为输入输入到PLC控制器的电子设备。传感器可以是基于其通过的信号类型的数字和模拟类型。这里有各种类型的传感器用来将不同的参数传递给控制器:感应式接近传感器、电容式接近传感器、光学传感器、超声波传感器、电阻温度检测器。(RTD)

  • 什么是冗余系统?

冗余系统是原始系统的复制品。当原始系统崩溃时,冗余系统负责原始系统并执行所有所需的操作。它提供了运行系统的重复特征。当运行系统发生故障时,冗余系统是非常有用的。下面是不同类型的冗余:输入输出(I/O)冗余、CPU冗余、电源冗余、冗余通信协议、总线系统冗余、冗余系统被设计成需要零点复位。

  • PLC在硬件继电器上的优点是什么?

以下是PLC在硬件继电器上的优势。PLC在软件和硬件两个基础上发生。但中继仅发生在硬件基础上。

PLC可以方便地监控和控制继电器的设备;在PLC软件中容易发现故障;PLC比继电器提供更多的工作功能和特性;PLC比继电器提供更多的灵活性和可靠性;与继电器相比,PLC编程逻辑易于修改和实现。

  • 说明PLC的功能。

PLC的功能有:顺序计算机控制、监测系统和设备、操作系统的位置或运动、系统故障状态的检测

  • PLC的主要应用领域是什么?

PLC在钢铁工业、玻璃工业、水泥工业、造纸厂、煤矿、汽车工业、化学工业、纺织工业、机器人系统和食品加工系统等工业部门都是必要的。用于电力输配电站、用于遥感设备的国产化、PLC也有助于教育目的,如学术和研究项目、PLC主要用于商业和教育用途。

  • PLC的主要优点是什么?

PLC有很多优点:PLC(尤其是紧凑型PLC)具有低成本与其他自动化技术相比较。它提供了一个更可靠解决方案,即使对于初学者来说,PLC编程也很容易编写和理解并实现逻辑。在所有的PLC编程中,LD语言是最简单的语言。

PLC的主要优点之一是易于与计算机进行通信和连接。PLC中有各种标准的通信协议。

PLC(特别是紧凑型PLC)不会占用太大的空间。它们的尺寸较小。

PLC运行非常快(几乎没有启动时间)。执行修改是可能的,而且非常容易。可以很容易地对已经实现的设计逻辑进行更改。

PLC具有与之相关的低维护性。

PLC编程提供模块化。模块化设计使开发变得容易。

正如我们之前看到的,PLC具有快速扫描时间(接近10-15毫秒)。它需要非常少的操作时间来执行任何任务。

由于这些优点,PLC取代了硬件继电器,在工业上得到了广泛的认可。

  • PLC的缺点是什么?

除了各种优势,这里有几个缺点:用PLC,你可以一次只运行一个程序。你不能同时运行多个PLC程序。在高温、振动条件下,性能降低。

  • 解释PLC中下载和上传的术语。

这两个术语与PLC和PC机之间的数据传输有关。上传意味着从PLC到PC.的数据传输;下载意味着从PC机到PLC的数据传输。

#机器人技术基础

  • 从事过哪种机器人品牌

ABB、FANUC、KUKA、EPSON。

  • 机器人的DH参数介绍

机械手末端到基坐标系的变换关系通常每个变换需要6个独立参数来描述坐标系i相对坐标系i-1的关系,3个用来描述位置另外3个用来描述方向。在1995年,Jacques Denavit和Richard Hartenberg提出了一种系统化的方法来解决这个问题,他们的方法值需要4个参数来描述位置和方向与相邻坐标系的关系:α、a、d、θ。

从第i-1关节的坐标到第i关节的坐标的齐次变换被构造为一个四个基本变换,两个旋转和两个变换的序列,如下所示:

  • 机器人运动学

机器人运动学包括正向运动学和逆向运动学,正向运动学即给定机器人各关节变量,计算机器人末端的位置姿态; 逆向运动学即已知机器人末端的位置姿态,计算机器人对应位置的全部关节变量。

机器人运动学包括正向运动学和逆向运动学,正向运动学即给定机器人各关节变量,计算机器人末端的位置姿态; 逆向运动学即已知机器人末端的位置姿态,计算机器人对应位置的全部关节变量。一般正向运动学的解是唯一和容易获得的,而逆向运动学往往有多个解而且分析更为复杂。机器人逆运动分析是运动规划不控制中的重要问题,但由于机器人逆运动问题的复杂性和多样性,无 法建立通用的解析算法。逆运动学问题实际上是一个非线性超越方程组的求解问题,其中包括解的存在性、唯一性及求解的方法等一系列复杂问题。

  • 机器人轨迹规划

所谓轨迹,是指机械手在运动过程中的位移、速度和加速度。而轨迹规划是根据作业任务的要求,计算出预期的运动轨迹。 工业机器人:介绍关节空间的运动规划和机器人末端在笛卡尔空间的运动规划。 移动机器人:介绍全局路径规划和局部路径规划方法。

机械手最常用的轨迹规划方法有两种:

第一种方法要求用户对于选定的转变结点(插值点)上的位姿、速度和加速度给出一组显式约束(例如连续性和光滑程度等),轨迹规划器从一类函数(例如n次多项式)中选取参数化轨迹,对结点进行插值,并满足约束条件,但约束的设定和轨迹规划均在关节空间进行。因此可能会发生与障碍物相碰。 第二种方法要求用户给出运动路径的解析式;如为直角坐标空间中的直线路径,轨迹规划器在关节空间或直角坐标空间中确定一条轨迹来逼近预定的路径。此方法路径约束是在直角坐标空间中给定的,而关节驱动器是在关节空间中受控的。

三次多项式插值:可以把所有路径点也看作是“起始点”或“终止点”,求解逆运动学,得到相应的关节矢量值。然后确定所要求的三 次多项式插值函数,把路径点平滑地连接起来。但是,在这些“起始点”和“终止点”的关节运动速度不再是零。

#数控技术与系统

  • 数控技术的基本原理

数控是数字控制的简称,数控技术是利用数字化信息对机械运动及加工过程进行控制的一种方法。

数控的基本原理是插补原理。插补(Interpolation),即机床数控系统依照一定方法确定刀具运动轨迹的过程。也可以说,已知曲线上的某些数据,度按照某种算法计算已知点之间的中间点的方法,也称为“数据点的密化”;数控回装置根据输入的零件程序的信息,将程序段所描述的曲线的起点、终点之间的空间进行数据密化,从而形成要求的轮廓轨迹,这种“数据密化”机能就称为“插补”。

  • 插补原理

逐点比较法的步骤:

位置判别,根据偏差函数判别式F的符号确定当前加工点的位置( 例如直线Fi = Xe*Yi- Ye* Xi ,圆Fi,j= xi*xi+yj*yj-R*R);

坐标进给,根据位置判别结果沿相应的轴和方向(X:Y?)进给一步; 偏差计算,根据递推公式计算新加工点的偏差值; 终点判别, 确定是否到达终点(判断插补或者进给的总步数N=Xe+Ye)。

  • 什么是刀具半径补偿(Tool Radius Compensation)?

根据按零件轮廓编制的程序和预先设定的偏置参数,数控装置能实时自动生成刀具中心轨迹的功能称为刀具半径补偿功能。

  • 列举几个常用的G代码?

G00---快速定位、G01---直线插补、G02---顺时针方向圆弧插补、G03---逆时针方向圆弧插补、G24---子程序结束、G26---循环加工。

#嵌入式系统原理与应用

  • 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题)

#define SECONDS_PER_YEAR (60 | 60 | 24 * 365)UL

#define 语法的基本知识(例如:不能以分号结束,括号的使用,等等)

懂得预处理器将为你计算常数表达式的值,因此直接写出你是如何计算一年中有多少秒而不是计算出实际的值,是更清晰而没有代价的。

意识到这个表达式将使一个16位机的整型数溢出-因此要用到长整型符号L,告诉编译器这个常数是的长整型数。如果你在你的表达式中用到UL(表示无符号长整型),那么你有了一个好的起点。记住,第一印象很重要。

  • 写一个“标准”宏MIN,这个宏输入两个参数并返回较小的一个。

#define MIN(A,B) ((A) <= (B) (A) : ))

标识#define在宏中应用的基本知识。这是很重要的,因为直到嵌入(inline)操作符变为标准C的一部分,宏是方便产生嵌入代码的唯一方法,对于嵌入式系统来说,为了能达到要求的性能,嵌入代码经常是必须的方法。

三重条件操作符的知识。这个操作符存在C语言中的原因是它使得编译器能产生比if-then-else更优化的代码,了解这个用法是很重要的。

懂得在宏中小心地把参数用括号括起来

我也用这个问题开始讨论宏的副作用,例如:当你写下面的代码时会发生什么事?Least = MIN(*p++, b);

  • 嵌入式系统中经常要用到无限循环,你怎么样用C编写死循环呢?

这个问题用几个解决方案。我首选的方案是:while(1) { }一些程序员更喜欢如下方案:for(;;) { }

这个实现方式让我为难,因为这个语法没有确切表达到底怎么回事。如果一个应试者给出这个作为方案,我将用这个作为一个机会去探究他们这样做的基本原理。如果他们的基本答案是:“我被教着这样做,但从没有想到过为什么。”这会给我留下一个坏印象。

第三个方案是用

goto

Loop:

goto Loop;

应试者如给出上面的方案,这说明或者他是一个汇编语言程序员(这也许是好事)或者他是一个想进入新领域的BASIC/FORTRAN程序员。

  • 用变量a给出下面的定义

a) 一个整型数

b) 一个指向整型数的指针

c) 一个指向指针的的指针,它指向的指针是指向一个整型数

d) 一个有10个整型数的数组

e) 一个有10个指针的数组,该指针是指向一个整型数的

f) 一个指向有10个整型数数组的指针

g) 一个指向函数的指针,该函数有一个整型参数并返回一个整型数

h) 一个有10个指针的数组,该指针指向一个函数,该函数有一个整型参数并返回一个整型数

答案是:

a) int a; // An integer

b) int *a; // A pointer to an integer

c) int **a; // A pointer to a pointer to an integer

d) int a[10]; // An array of 10 integers

e) int *a[10]; // An array of 10 pointers to integers

f) int (*a)[10]; // A pointer to an array of 10 integers

g) int (*a)(int); // A pointer to a function a that takes an integer argument and returns an integer

h) int (*a[10])(int); // An array of 10 pointers to functions that take an integer argument and return an integer

  • 关键字static的作用是什么?

在C语言中,关键字static有三个明显的作用:

在函数体,一个被声明为静态的变量在这一函数被调用过程中维持其值不变。

在模块内(但在函数体外)一个被声明为静态的变量可以被模块内所用函数访问但不能被模块外其它函数访问。它是一个本地的全局变量。

在模块内,一个被声明为静态的函数只可被这一模块内的其它函数调用。那就是,这个函数被限制在声明它的模块的本地范围内使用。

大多数应试者能正确回答第一部分,一部分能正确回答第二部分,同是很少的人能懂得第三部分。这是一个应试者的严重的缺点,因为他显然不懂得本地化数据和代码范围的好处和重要性。

  • 关键字const是什么含意?

我只要一听到被面试者说:“const意味着常数”,我就知道我正在和一个业余者打交道。去年Dan Saks已经在他的文章里完全概括了const的所有用法,因此ESP(译者:Embedded Systems Programming)的每一位读者应该非常熟悉const能做什么和不能做什么.如果你从没有读到那篇文章,只要能说出const意味着“只读”就可以了。尽管这个答案不是完全的答案,但我接受它作为一个正确的答案。(如果你想知道更详细的答案,仔细读一下Saks的文章吧。)如果应试者能正确回答这个问题,我将问他一个附加的问题:下面的声明都是什么意思?

Const int a;//a是一个常整型数

int const a;//a是一个常整型数

const int *a;//a是一个指向常整型数的指针,也就是说整型数是不可被修改的,但是指针可以。

int * const a;//a是一个指向整型数的常指针,也就是说,指针指向的整型数是可以修改的,但指针式不可被修改的。

int const * a const;//a是一个指向常整型数的常指针。指针和指针指向的整型数都是不可被修改的

如果应试者能正确回答这些问题,那么他就给我留下了一个好印象。顺带提一句,也许你可能会问,即使不用关键字const,也还是能很容易写出功能正确的程序,那么我为什么还要如此看重关键字const呢?我也如下的几下理由:首先,关键字const的作用是为给读你代码的人传达非常有用的信息,实际上,声明一个参数为常量是为了告诉了用户这个参数的应用目的。如果你曾花很多时间清理其它人留下的垃圾,你就会很快学会感谢这点多余的信息。(当然,懂得用const的程序员很少会留下的垃圾让别人来清理的。)其次,通过给优化器一些附加的信息,使用关键字const也许能产生更紧凑的代码。同时,合理地使用关键字const可以使编译器很自然地保护那些不希望被改变的参数,防止其被无意的代码修改。简而言之,这样可以减少bug的出现。

  • 关键字volatile有什么含意 并给出三个不同的例子。

一个定义为volatile的变量是说这变量可能会被意想不到地改变,这样,编译器就不会去假设这个变量的值了。精确地说就是,优化器在用到这个变量时必须每次都小心地重新读取这个变量的值,而不是使用保存在寄存器里的备份。下面是volatile变量的几个例子:

并行设备的硬件寄存器(如:状态寄存器)

一个中断服务子程序中会访问到的非自动变量(Non-automatic variables)

多线程应用中被几个任务共享的变量

回答不出这个问题的人是不会被雇佣的。我认为这是区分C程序员和嵌入式系统程序员的最基本的问题。嵌入式系统程序员经常同硬件、中断、RTOS等等打交道,所用这些都要求volatile变量。不懂得volatile内容将会带来灾难。假设被面试者正确地回答了这是问题(嗯,怀疑这否会是这样),我将稍微深究一下,看一下这家伙是不是直正懂得volatile完全的重要性。

  • 一个参数既可以是const还可以是volatile吗?一个指针可以是volatile 吗?解释为什么。

是的。一个例子是只读的状态寄存器。它是volatile因为它可能被意想不到地改变。它是const因为程序不应该试图去修改它。

是的。尽管这并不很常见。一个例子是当一个中服务子程序修该一个指向一个buffer的指针时。

  • 下面的函数有什么错误:

int square(volatile int *ptr)

{

return ptr *ptr;

}

这段代码的有个恶作剧。这段代码的目的是用来返指针_ptr指向值的平方,但是,由于_ptr指向一个volatile型参数,编译器将产生类似下面的代码:

int square(volatile int *ptr)

{

int a,b;

a = *ptr;

b = *ptr;

return a * b;

}

由于*ptr的值可能被意想不到地该变,因此a和b可能是不同的。结果,这段代码可能返不是你所期望的平方值!正确的代码如下:

long square(volatile int *ptr)

{

int a;

a = *ptr;

return a * a;

}

  • 嵌入式系统总是要用户对变量或寄存器进行位操作。给定一个整型变量a,写两段代码,第一个设置a的bit 3,第二个清除a 的bit 3。在以上两个操作中,要保持其它位不变。

对这个问题有三种基本的反应:不知道如何下手。该被面者从没做过任何嵌入式系统的工作;用bit fields。Bit fields是被扔到C语言死角的东西,它保证你的代码在不同编译器之间是不可移植的,同时也保证了的你的代码是不可重用的。我最近不幸看到Infineon为其较复杂的通信芯片写的驱动程序,它用到了bit fields因此完全对我无用,因为我的编译器用其它的方式来实现bit fields的。从道德讲:永远不要让一个非嵌入式的家伙粘实际硬件的边;用 #defines 和 bit masks 操作。这是一个有极高可移植性的方法,是应该被用到的方法。最佳的解决方案如下:

#define BIT3 (0x1<<3)

static int a;

void set_bit3(void)

{

a |= BIT3;

}

void clear_bit3(void)

{

a &= ~BIT3;

}

一些人喜欢为设置和清除值而定义一个掩码同时定义一些说明常数,这也是可以接受的。几个要点:说明常数、|=和&=~操作。

  • 嵌入式系统经常具有要求程序员去访问某特定的内存位置的特点。在某工程中,要求设置一绝对地址为0x67a9的整型变量的值为0xaa66。编译器是一个纯粹的ANSI编译器。写代码去完成这一任务。

这一问题测试你是否知道为了访问一绝对地址把一个整型数强制转换(typecast)为一指针是合法的。这一问题的实现方式随着个人风格不同而不同。典型的类似代码如下:

int *ptr;

ptr = (int *)0x67a9;

*ptr = 0xaa55;

一个较晦涩的方法是:

*(int * const)(0x67a9) = 0xaa55;

即使你的品味更接近第二种方案,但我建议你在面试时使用第一种方案。

  • 中断是嵌入式系统中重要的组成部分,这导致了很多编译开发商提供一种扩展—让标准C支持中断。具代表事实是,产生了一个新的关键字interrupt。下面的代码就使用了interrupt关键字去定义了一个中断服务子程序(ISR),请评论一下这段代码的。

__interrupt double compute_area (double radius)

{

double area = PI * radius * radius;

printf(” Area = %f”, area);

return area;

}

这个函数有太多的错误了,以至让人不知从何说起了:

ISR 不能返回一个值。如果你不懂这个,那么你不会被雇用的。

ISR 不能传递参数。如果你没有看到这一点,你被雇用的机会等同第一项。

在许多的处理器/编译器中,浮点一般都是不可重入的。有些处理器/编译器需要让额处的寄存器入栈,有些处理器/编译器就是不允许在ISR中做浮点运算。此外,ISR应该是短而有效率的,在ISR中做浮点运算是不明智的。

与第三点一脉相承,printf()经常有重入和性能上的问题。

如果你丢掉了第三和第四点,我不会太为难你的。不用说,如果你能得到后两点,那么你的被雇用前景越来越光明了。

  • 下面的代码输出是什么,为什么?

Void foo(void)

{

unsigned int a = 6;

int b = -20;

(a+b > 6) puts("> 6") : puts("<= 6");

}

这个问题测试你是否懂得C语言中的整数自动转换原则,我发现有些开发者懂得极少这些东西。不管如何,这无符号整型问题的答案是输出是“>6”。原因是当表达式中存在有符号类型和无符号类型时所有的操作数都自动转换为无符号类型。 因此-20变成了一个非常大的正整数,所以该表达式计算出的结果大于6。

这一点对于应当频繁用到无符号数据类型的嵌入式系统来说是丰常重要的。如果你答错了这个问题,你也就到了得不到这份工作的边缘。

  • 评价下面的代码片断:

unsigned int zero = 0;

unsigned int compzero = 0xFFFF;

/* 1's complement of zero */

对于一个int型不是16位的处理器为说,上面的代码是不正确的。应编写如下:

unsigned int compzero = ~0;

这一问题真正能揭露出应试者是否懂得处理器字长的重要性。在我的经验里,好的嵌入式程序员非常准确地明白硬件的细节和它的局限,然而PC机程序往往把硬件作为一个无法避免的烦恼。到了这个阶段,应试者或者完全垂头丧气了或者信心满满志在必得。如果显然应试者不是很好,那么这个测试就在这里结束了。但如果显然应试者做得不错,那么我就扔出下面的追加问题,这些问题是比较难的,我想仅仅非常优秀的应试者能做得不错。提出这些问题,我希望更多看到应试者应付问题的方法,而不是答案。不管如何,你就当是这个娱乐吧…

  • 尽管不像非嵌入式计算机那么常见,嵌入式系统还是有从堆(heap)中动态分配内存的过程的。那么嵌入式系统中,动态分配内存可能发生的问题是什么?

这里,我期望应试者能提到内存碎片,碎片收集的问题,变量的持续时间等等。这个主题已经在ESP杂志中被广泛地讨论过了(主要是 P.J. Plauger, 他的解释远远超过我这里能提到的任何解释),所有回过头看一下这些杂志吧!让应试者进入一种虚假的安全感觉后,我拿出这么一个小节目:下面的代码片段的输出是什么,为什么?

Char *ptr;

if ((ptr = (char *)malloc(0)) == NULL)

puts(“Got a null pointer”);

else

puts(“Got a valid pointer”);

这是一个有趣的问题。最近在我的一个同事不经意把0值传给了函数malloc,得到了一个合法的指针之后,我才想到这个问题。这就是上面的代码,该代码的输出是“Got a valid pointer”。我用这个来开始讨论这样的一问题,看看被面试者是否想到库例程这样做是正确。得到正确的答案固然重要,但解决问题的方法和你做决定的基本原理更重要些。

  • Typedef 在C语言中频繁用以声明一个已经存在的数据类型的同义字。也可以用预处理器做类似的事。例如,思考一下下面的例子

#define dPS struct s *

typedef struct s * tPS;

以上两种情况的意图都是要定义dPS 和 tPS 作为一个指向结构s指针。哪种方法更好呢?(如果有的话)为什么?这是一个非常微妙的问题,任何人答对这个问题(正当的原因)是应当被恭喜的。答案是:typedef更好。思考下面的例子:

dPS p1,p2;

tPS p3,p4;

一个扩展为

struct s * p1, p2;

上面的代码定义p1为一个指向结构的指,p2为一个实际的结构,这也许不是你想要的。第二个例子正确地定义了p3 和p4 两个指针。

  • C语言同意一些令人震惊的结构,下面的结构是合法的吗,如果是它做些什么?

Int a = 5, b = 7, c;

c = a+++b;

这个问题将做为这个测验的一个愉快的结尾。不管你相不相信,上面的例子是完全合乎语法的。问题是编译器如何处理它?水平不高的编译作者实际上会争论这个问题,根据最处理原则,编译器应当能处理尽可能所有合法的用法。因此,上面的代码被处理成:

c = a++ + b;

因此, 这段代码持行后a = 6, b = 7, c = 12。

如果你知道答案,或猜出正确答案,做得好。如果你不知道答案,我也不把这个当作问题。我发现这个问题的最大好处是:这是一个关于代码编写风格,代码的可读性,代码的可修改性的好的话题。

#控制工程基础(传感与检测技术)

  • 开环控制系统和闭环控制系统的概念和特点?

闭环控制系统是指控制装置与被控对象之间既有顺向作用又有反向联系的过程。它是按照偏差进行控制,控制精度较高,但系统所使用的元件较多,结构复杂,系统的性能分析和设计比较麻烦。开环控制系统是控制装置与被控对象之间只有顺向作用没有反向联系的过程。没有自动修正偏差的能力,抗扰动性较差,但结构简单,调整方便。

  • 反馈控制系统的组成?

组成控制系统的元件有测量元件(传感器、测速发电机等),给定元件(给定电压的电位计等),比较元件(差动放大器等),放大元件(电压放大器、功率放大器等),执行元件(阀、电动机等),校正元件(有源网络等)。

  • 自动控制系统的分类?

恒值控制系统:系统的输入是一个常值,要求被控量也是一个常值,故又称为调节器;(温度控制,液位控制等)

随动系统:系统的输入量是随时间变化的函数,要求被控量跟随输入量的变化,故又成为伺服系统;(函数记录仪等)

程序控制系统:系统的输入量是随时间变化的函数,要求被控亮准备迅速加以复现。(数控机床等) 

  • 反馈控制系统的实例?

锅炉液位控制系统,电阻炉温控制系统等。 

  • 分析控制系统的工程方法有哪些?

时域分析法,根轨迹法,频域分析法。 

  • 控制系统的数学模型有哪些?

微分方程,传递函数,频率特性。 

  • 比例-微分(PD)控制特点?

PD控制是一种超前校正,能在出现位置误差之前产生早期的修正信号,从而达到改善系统性能的作用。它能够增大系统的阻尼比,使超调量下降,调节时间缩短,动态性能得到改善,又使相角裕度增大,从而改善稳态性能。不影响系统的自然频率,微分控制对高频噪声有放大作用,不能用于高频情况。

  • 测速反馈控制特点?

通过将输出的速度信号反馈到输入端,并与误差信号比较,测速反馈可以增大系统阻尼,使超调量下降,调节时间缩短,动态性能得到改善,但会降低开环增益,增大稳态误差。同样不影响系统自然频率。

  • 高阶系统的性能分析?

答:通过闭环主导极点和耦极子来进行分析。 

  • 闭环极点和闭环零点对系统性能的影响?

闭环零点会减小系统阻尼比,从而使超调量增大,但减小峰值时间,使系统响应速度加快,这种作用会随着闭环零点接近虚轴而加剧。闭环极点会增大系统阻尼比,从而使超调量较低,但峰值时间增大,使系统响应速度变慢,这种作用会随着闭环零点接近虚轴而加剧。

  • 线性系统稳定性的充要条件和判据?

系统闭环极点位于s左半平面内。时域内用劳斯表(劳斯表第一列全为正),根轨迹(根轨迹全部位于s左半平面内),频域内用奈奎斯特判据(开环传递函数正实部极点数等于奈奎斯特曲线逆时针包围(-1,j0)点圈数)。

  • 减小或消除稳态误差的措施?

增大系统开环增益或扰动作用点之前的前向通道增益;

在系统的前向通道或主反馈通道设置串联积分环节;

采用串级控制内回路扰动;

采用复合控制。 

  • 如何通过根轨迹判断系统性能?

稳定性(系统根轨迹位于s左半平面则系统稳定)稳态性能(通过判别系统型别和开环增益)动态性能(通过主导极点的位置) 

  • 系统频率特性的概念?

系统谐波输入(正弦输入)下,输出响应中与输入同频率的谐波分量与谐波输入的幅值之比称为幅频特性,相位之差成为相频特性,两者统称为系统的频率特性。 

  • 相角裕度和幅值裕度的定义?

设Wc为系统的截止频率,显然A(Wc)=1,定义相角裕度为γ=180º+φ(Wc)。含义:对于闭环稳定系统,如果系统开环相频特性再滞后γ度,则系统将处于临界稳定状态。设Wx为系统穿越频率,显然φ(Wx)=(2k+1)π,定义幅值裕度为h=1/A(Wx)。含义:对于闭环稳定系统,如果系统开环幅频特性再增大h倍,则系统将处于临界稳定状态。

  • 振荡环节和二阶微分缓解的谐振频率和谐振峰值?

对数幅频曲线中,幅值极限处的频率成为谐振频率Wr(Wr=Wn√(1-2ξ²)),谐振峰值Mr(Mr=1/2ξ√(1-ξ²))。

  • 频率响应分析系统动态性能?

根据带宽频率Wb(定义为闭环幅频特性下降到频率为零时分贝值以下3分贝时的频率)来分析,带宽频率越大,系统响应速度越快。

  • 为什么比例P控制,微分D控制和积分I控制都不能单独使用?

比例P控制,可以提高系统的开环增益,减小系统稳态误差,改善系统稳态性能,但会降低系统的相对稳定性,甚至造成闭环系统不稳定,因此比例P控制不能单独使用。微分D控制只对动态性能有作用,对稳态过程没有影响,且对系统噪声非常敏感,所以微分D控制不能单独使用。积分I控制可以提高系统型别,有利于稳态性能的提高,但增加了一个位于原点的开环极点,会使信号产生90º的相角滞后,对系统稳定性不利,所以积分I控制不能单独使用。 

  • 超前校正和滞后校正的性能比较?

超前校正:通过相角超前特性提高系统的相角裕度γ(相角裕度调节范围不能过大)和截止频率Wc,从而减小超调量σ%和调节时间Ts;使开环增益降低a倍,需要其他部分提高放大倍数以使增益不变;抗高频干扰不强,适用于噪声电平不高的场合。

滞后校正:利用其高频幅值衰减特性,以降低系统的截止频率Wc,提高相角裕度γ(相角裕度调节范围大)。 

  • 离散系统中信号的采样与复现?

在采样控制系统中,把连续信号变为脉冲序列的过程成为采样,实现采样的装置成为采样器。(香农采样定理:要使信号能够从采样信号中圆满恢复过来则要求:Ws>2Wh,Ws为采样角频率,Wh为输入信号的最大角频率)。在采样控制系统中,把脉冲序列转变为连续信号的过程称为信号复现过程,实现复现过程的装置称为保持器。保持器具有外推功能,即现在时刻的输出信号表现为过去时刻离散信号的外推,零阶保持器就是一种按照常值外推的元件。 

  • 离散系统稳定的充要条件以及判据?

当系统特征方程的所有特征根都位于z平面上单位圆内,则离散系统稳定。判据:应用双线性变化再用劳斯稳定判据;朱利稳定判据;对于低阶系统可直接求特征根判别。 

  • 非线性系统和线性系统的比较?

非线性系统的输入与输出不再呈线性关系,因此叠加原理不再适用。同时,非线性系统的运动具有如下特点:稳定性分析复杂:非线性系统可能存在多个平衡状态,并且每个平衡状态可能稳定可能不稳定,平衡状态的稳定性不仅与系统的结构和参数有关,而且与系统的初始条件有关;可能存在自激振荡现象:自激振荡是指在没有外界周期变化信号的作用时,系统内产生的具有固定振幅和频率的周期稳定运动;频率响应发生畸变:不仅含有与输入同频率的正弦分量,还含有关于w的高次谐波分量,使输出波形发生非线性畸变。 

#Matlab

  • 什么是MATLAB?

MATLAB是一种用于数值计算的高性能语言。它在易于使用的环境中整合了计算, 可视化和编程功能, 在该环境中, 问题和答案均以熟悉的二进制符号表示。它包含了:数学与计算、算法开发建模、仿真和原型制作、数据分析, 探索和可视化、科学与工程图形、应用程序开发, 包含图形用户界面构建。

  • 解释MATLAB API(应用程序接口)?

MATLAB API是一个库, 允许我们编写与MATLAB交互的Fortran和C程序。它包括从MATLAB调用例程, 读取和写入Mat文件以及将MATLAB称为计算引擎的功能。

  • 什么是MATLAB工作环境?

这是我们作为MATLAB客户端或程序员使用的一组工具和设施。它包含用于管理工作区中的变量以及导入和导出数据的工具。它还包含用于开发, 管理, 调试和分析M文件(MATLAB应用程序)的工具。

  • 什么是Simulink?

Simulink是MATLAB的附加产品, 它提供了一个交互式的, 仿真的图形化环境, 用于对动态系统进行建模和分析。

  • 解释如何在MATLAB中表示多项式?

MATLAB中的多项式由矢量表示。要在MATLAB中创建多项式, 请将多项式的每个系数按降序输入向量中。

  • 解释在MATLAB中处理图形?

这是MATLAB图形系统。它包含用于二维和三维数据可视化, 图像处理, 动画和显示图形的高级命令。它还包含低级命令, 这些命令使我们可以完全自定义图形的显示以及在你的应用程序上构建完整的图形用户界面。

  • 什么是MATLAB中的获取和设置?

Get和Set被指示为getter和setter函数。为了分配属性, 使用了setter函数, 而为了访问特性, 则使用了getter函数。

  • MATLAB中可以支持多维数组吗?

不, 它不支持。它支持二维类型的矩阵。程序员可以选择使用自己的功能来编写自己的功能, 以根据使用情况使用多维数组功能。

  • MATLAB提供了哪些循环类型?

MATLAB提供了类似的循环:While循环、对于循环、嵌套循环

  • MATLAB中的3D可视化元素是什么?

3D可视化元素允许MATLAB处理3D图形。

曲面和网格图:它包括图矩阵, 可视化函数和颜色图。

视图控制:用于控制摄像机的视点, 旋转, 缩放和宽高比以及设置轴限制。

照明:用于添加和控制场景照明。

透明度:用于指定对象的透明度。

卷可视化:用于卷数据网格。

  • 什么是MATLAB中的内存管理功能?

以下是内存管理功能的列表。

清除:从内存中删除变量。

Pack:它将现有变量保存到磁盘, 然后连续重新加载它们。

保存:选择性地将变量持久保存到磁盘。

加载:重新加载使用保存功能存储的数据文件。

退出:退出MATLAB和所有分配给系统的内存。

  • MATLAB的基本图解和图形是什么?

下表定义了基本图和图形:

方框:轴边界

误差线:沿着曲线绘制误差线。

保留:在添加新图形时保留当前图形。

线:创建线对象。

LineSpec(线路规范):线路规范字符串的语法。

Loglog:登录到对数比例图。

图:二维线图。

图3:3-D线图

Plotyy:在左侧和右侧均带有y轴的二维线图

极坐标:极坐标图。

Semilogx:半对数图。

符号学:半对数图。

子图:在平铺位置创建一个轴。

Xlim:设置或查询x轴限制。

Ylim ::设置或查询y轴限制。

Zlim:设置或查询z轴限制。

  • 什么是MATLAB中的乳胶?

MATLAB已经自然地处理了简单的乳胶编码, 可以引入希腊字母或更改字体大小并在图形中显示。

  • 在MATLAB中, M文件是什么意思?

M文件不过是在运行时解释的普通ASCII脚本而已。我们可以说这些是存储在扩展名为.m的文本文件中的子程序, 被称为M文件。 M文件用于大多MATLAB开发以及平台独立性和可维护性。它被解析一次并”及时”编译, 但是对客户也是透明的。

  • 什么是MEX文件?

MEX文件是本机C或C ++文件, 可在运行时直接动态连接到MATLAB应用程序中。它允许在MATLAB中使用C, C ++和Fortran程序。必须针对要在其上运行的每个硬件结构对其进行编译。

  • MATLAB中存在哪些标准工具箱, 以及如何访问这些工具箱?

可用的各种类型的工具箱为:控制系统、模糊逻辑、图像处理、LMI控制、神经网络、优化、偏微分方程、鲁棒控制、信号处理、统计、符号数学、系统识别、小波,要创建此工具箱, 请转到MATLAB”开始”菜单, 然后转到”工具箱”子菜单, 然后选择要使用的工具箱。

  • MATLAB中的伪随机二进制序列和数值精度是什么?

伪随机二进制序列:在新的频域系统标识工具箱中, 针对一组指定的长度(2 ^ 2-1到2 ^ 30-1)创建M文件的形式称为伪随机二进制序列。它也称为mlb(最大长度, 二进制序列)。

数值精度:表示为双精度浮点数的数值量称为数值精度。在系统中, 此类数字具有53个有效的二进制位, 大约为15或16个十进制数字。

  • 什么是P码?

Pcode是M文件的预编码版本。它存储函数的加载时间。除了非常高的M文件外, 这很可能不是问题, 因为大多数文件只被解析了一次。 Pcode还允许我们对其他人隐藏源代码。无法将Pcode更改回M文件源。 Pcode与平台无关。

  • 说明MATLAB中提到的工具:who, whos, pi, eps, 类型。

who:它将显示你当前定义的所有变量。

whos:它将显示变量, 变量大小和其他信息。

pi:它是一个返回pi方程的函数。

eps:该函数返回MATLAB的最低浮点数。如果我们有一个向量可能包含零, 而这些零将在某事物的分母中结束, 则这很有用。如果将eps添加到向量中, 则不会添加任何重要的内容, 但不会再出现被零除的问题

类型:MATLAB搜索路径中任何函数的函数名, 使我们可以看到该函数的编写方式。

  • 什么是MATLAB中的应力分析?

MATLAB用于航空工程, 太空环境。MATLAB适用于灵活的动力学。这些领域专家对金属和复合材料结构等各种操作进行应力分析。要分析压力, 需要NASTRAN, IDEAD, Oracle和PATRAN的熟练程度。该功能还用于金属结构的飞机上。应力分析包括对控制表面刚度的了解, 回路评估, 有限项建模以及疲劳测试要求和分析。

参考文档:

https://wenku.baidu.com/view/edf795350129bd64783e0912a216147917117eec.html

https://wenku.baidu.com/view/48fbbc4d763231126edb117f.html

https://wenku.baidu.com/view/b74efc3332d4b14e852458fb770bf78a64293af6.html

https://blog.csdn.net/weixin\_44270855/article/details/105092119

https://blog.csdn.net/hackersuye/article/details/83279329

http://www.360doc.com/showweb/0/0/908893973.aspx

https://baike.baidu.com/item/%E6%9C%BA%E5%99%A8%E4%BA%BA%E8%BF%90%E5%8A%A8%E5%AD%A6/3320290?fr=aladdin

https://m.job592.com/pay/ms/67582.html

https://blog.csdn.net/mao\_hui\_fei/article/details/82710536?utm\_medium=distribute.pc\_relevant.none\-task\-blog\-BlogCommendFromBaidu\-1&depth\_1\-utm\_source=distribute.pc\_relevant.none\-task\-blog\-BlogCommendFromBaidu\-1

https://wenku.baidu.com/view/a6aa39785ff7ba0d4a7302768e9951e79b896980.html

http://www.srcmini.com/33343.html

https://wenku.baidu.com/view/89c22fb5bdd126fff705cc1755270722192e59b5.html