信号幅度的拼音调节步长什么意思

 上传我的文档
 上传文档
 下载
 收藏
该文档贡献者很忙,什么也没留下。
 下载此文档
信号与系统实验报告 哈工大威海
下载积分:900
内容提示:信号与系统实验报告 哈工大威海
文档格式:DOC|
浏览次数:49|
上传日期: 06:23:48|
文档星级:
全文阅读已结束,如果下载本文需要使用
 900 积分
下载此文档
该用户还上传了这些文档
信号与系统实验报告 哈工大威海
关注微信公众号机器人编程之机器人的伺服电机阅读//5b.cdn.sohucs.com/images/ea1be1a283b463e336d.jpeg机器人的伺服电机是用来将机器人大脑发出的运动指令转换为运动动作的部件,相当于人的肌肉的作用。本讲教你如何连接、调整以及测试机器人伺服电机。为此,你需要理解和掌握控制伺服电机方向、速度和运行时间的相关PBASIC 指令及其编程技术。由于精确地控制伺服电机是决定机器人性能的关键,所以,在把伺服电机安装到机器人底盘之前先熟悉这些内容是非常重要而且必需的。
连续旋转伺服电机简介
机器人伺服电机有很多种,本讲要介绍的主要是能够使你的轮式机器人两个轮子不停旋转的连续旋转伺服电机,如图2-1所示。图中指出了该伺服电机的外部配件,这些配件将在本讲或后续章节中用到。
任务1:将伺服电机连接到教学板
在本任务中首先将伺服电机连接到电源和BASIC Stamp模块的I/O口,然后搭建一个LED电路来监视BASIC Stamp模块发送到伺服电机的运动控制信号。
连接伺服电机所需的零部件
帕拉斯公司生产的连续旋转伺服电机2个;
搭建LED电路所需的零配件(LED和470欧姆电阻)2套
连接伺服电机到
把三位开关拨至0位切断教学底板的电源(图2-2)。
图2-3显示的是教学板上伺服电机接线端子。你可以用板上的跳线来选择伺服电机的供电电源是来自机器人套件中的电池盒Vin还是来自外接直流电源Vdd。要移动跳线帽,你必须向上把跳线帽从原来短接的2个脚上拔下来,然后把跳线帽压进你想短接的2个脚上去。
如果使用6V电池组,将两个伺服电机接线端子之间的跳线帽接Vin,参照图2-3(左图)所示。
如果使用7.5 V、1000 mA的直流电源,将跳线帽接Vdd,参照图2-3(右图)所示。
本书中所有的示例和说明都是用电池组供电。图2-4是你将要搭建的电路的示意图,跳线设定接Vin。
注意:每个伺服电机的控制电缆有三根线,其中白色的线用来传送电机的控制信号,红色用来接到电源上,而黑色的则是地线。这些线的颜色的定义在伺服电机出厂时就已经定义好。以后你将会在工程上看到,许多电气元件都是通过线的颜色来标记电线所承担的功能。
连接完成后,搭建好的系统如图2-5图所示
(不含LED监视电路)。
ED监视电路如图2-6所示。左边是电气原如果使用的是套件中的电池
组,选择Vin。如果使用的是AC-DC 直流电源,选择Vdd。理图,右边是在面包板上的接线图。该电路能够监视控制伺服电机的信号。为什么呢?
从图2-4的伺服电机连线图可知,两个伺服电机的控制信号线(白色)分别接到了微控制器的P12和P13口,即由微控制器的P12和P13口输出的控制信号控制两个伺服电机的运动;图2-6所示的LED监控指示电路正好也是指示的P12和P13口的信号,所以图2-6的LED电路可以监控伺服电机的控制信号。
任务2:伺服电机调零
所谓伺服电机调零是指,当发送一个特定的控制信号(零点标定信号)给伺服电机时,让电机保持静止的过程。由于伺服电机在工厂没有预先调整,它们在接收到该零点标定信号时可能会转动。因此你要用螺丝刀调节伺服电机模块内的调节电阻让伺服电机保持静止。这就是伺服电机调零过程。调整完成之后,你要测试伺服电机,验证其功能是否正常。测试程序将发送控制信号让伺服电机顺时针和逆时针以不同的速度旋转。
机器人套件中提供的螺丝起子是唯一在本任务中需要的额外的工具。
发送零点标定信号
图2-7显示的信号是发送到与 P12连接的伺服电机的零点校准信号,称为零点标定信号。即如果伺服电机零点已经调节好,发送这个信号给电机就可以让电机保持静止不动。这是一个脉冲时间间隔为20ms,脉冲宽度为1.5 ms的脉冲序列信号。
要让机器人的大脑即BS2微控制器能够产生图2-7所示的零点标定信号,必须用到几个新的PABSIC指令:PULSOUT指令、PAUSE指令,和DO…LOOP循环语句。
PULSOUT指令用来让微控制器产生一个5V电平脉冲,其指令格式和指令参数如下:
PULSOUT Pin, Duration指令参数Pin用来确定是给微控制器的哪个I/O脚输出脉冲,而Duration则是用来确定脉冲的宽度的时间单位数,其时间单位是2微秒。因此,要给P12引脚产生图2-7所示的1.5ms的高电平脉冲信号,需要输入如下的指令行:
PULSOUT 12, 750
显然,如果知道脉冲要持续多长时间,你就可以方便地计算出PULSOUT指令的参数Duration的值:Duration变量=脉冲持续时间/2微秒。按照此公式,零点标定脉冲的宽度变量:
Duration=0.002s=750。
PULSOUT指令只产生脉冲,要控制脉冲之间的间隔必须用到PBASIC语言的PAUSE指令。
PAUSE指令的使用格式如下:
PAUSE DurationDuration 是PAUSE指令的参数,它的值告诉BASIC Stamp微控制器在执行下一条指令之前要等待多久。Duration的单位是千分之一秒,即毫秒。假如你想等待1秒,可以给Duration赋值为1000。
指令表示如下:
PAUSE 1000
如果想要等待2秒,表示如下:
PAUSE 2000因此,要实现图2-7所示的零点标定信号,必须在PULSOUT指令后添加如下语句:
要持续不断地产生图2-7所示的脉冲序列信号,还必须将PULSOUT语句和PASUSE语句放到DO…LOOP循环中。对于计算机或者微控制器而言,它们作为机器人的大脑,与人类或者其它生物的大脑相比,具有一个最大的优势就是,它们可以毫不怨言地不断重复做同一件事情。如果你要你的微控制器不断重复同样的操作,只需将相关的指令放到指令关键词DO和LOOP之间。因此,你要让微控制器不断产生零点标定信号,只需将PULSOUT语句和PAUSE语句放到DO和LOOP之间。最后能够产生图2-7零点标定信号的程序模块如下:
例程: CenterServoP12.bs2
' CenterServoP12.bs2
' This program sends 1.5 ms pulses to the servo connected to
' P12 for manual centering.
' {$STAMP BS2}
' {$PBASIC 2.5}
DEBUG "Program Running!"
PULSOUT 12, 750
注意:以上程序一旦执行,将永远执行下去,直到你关断微控制器的电源为止,下一个任务将指导你如何控制重复执行的次数。
最好每次只对一只电机做标定,因为这样的话,在你调节电机时你就可以听到(为何用听到,而不用看到?)什么时候电机停止。上面的程序只发送零点标定信号到P12,下面的步骤将指导你从如何调整电机,使其保持静止状态。在调节完连接到P12上的伺服电机后,用同样的方法调节连接到P13口的电机。
将教学底板三位开关拨到“2”,打开电源。
输入、保存并运行程序CenterServoP12.bs2。
如果电机没有进行零点标定,它的连接喉就会转动,而且你也能听到里面马达转动的响声。
如果电机还没有进行零点标定,按照图2-8所示的步骤,用螺丝刀轻轻调节伺服电机上的电位器,直到电机停止转动。(仔细倾听电机的声音,确信电机已经停止转动)
验证连接到 P12 的信号监视电路的LED 灯是否发光,如果发光,表明零点标定脉冲已经发送给连接到P12 口上的电机了。
如果电机已经完成了零点调节,它不会转动。但是损坏了或有故障的电机有时也不转动。任务4将在电机安装到机器人底盘之前排除这种可能。
如果电机确实不再转动,下面你可以自己对连接到P13的伺服电机进行测试并做零点标定。
该你了对连接到P13的伺服电机做零点调整
利用下面程序对连接到P13的伺服电机重复上述过程:
程序示例: CenterServoP13.bs2
' CenterServoP13.bs2
' This program sends 1.5 ms pulses to the servo connected to
' P13 for manual centering.
' {$STAMP BS2}
' {$PBASIC 2.5}
DEBUG "Program Running!"
PULSOUT 13, 750
注意:如果上述任务完成后,不再进行后面的任务,一定要记得将教学板的电源断开。
任务3:如何保存数值和计数
在任务2中,你已经知道如何使用循环语句让微控制器不断产生零点标定信号。当然,你在编写某个程序时,肯定并不总是需要机器人永远执行同一个操作或者说任务,而只希望它执行一段指定的时间或者执行一些固定的次数。这时,你就要在PBASIC 程序中用于到变量。
变量用来保存数值。后面的机器人程序很大程度上都要依赖使用变量。用变量保存数值的最主要的作用就是程序能用这些变量来计数。一旦你的程序能计数,你就能控制和跟踪事件发生的次数。
用变量存储数值,数学运算和计数变量可以用来储存数值。PBASIC语言在使用一个变量之前,要先给该变量起一个名字,并说明该变量的大小类型。这叫声明一个变量。声明一个变量的PBASIC语法如下:
variableName VAR Size
实际声明变量时,你用你自己起的名字代替variableName,Size用来说明变量的大小类型,PBASIC程序中可以声明的变量类型如下:
Bit — 存储0或者1;
Bib — 用来存储0到15之间的任意数值;
Byte — 用来存储0到255之间的任意数值;
Word — 用来存储0到65535之间的任意数值,或者-3之间的任意数值。
注意:为何有上述特定的变量类型大小呢?请参考二进制的说明。
下面的例程包含两个“word”大小的变量:
value VAR Word
anotherValue VAR Word
在声明变量之后,你也可以对它初始化,即给它一个初始值。
value = 500
anotherValue = 2000
在“value = 500”中,符号“=”是个运算符。你可以利用其它一些运算符和变量进行数学运算。在这里有两个乘法运算的例子:
value = 10 * value
anotherValue = 2 * value
程序示例: VariablesAndSimpleMath.bs2
这个例程演示了如何对变量进行声明、初始化和运算。
在运行程序之前,对DEBUG指令要显示的内容进行预测。
输入、保存并运行程序VariablesAndSimpleMath.bs2。
和你的预测进行对比,解释所有的不相同的原因。
' VariablesAndSimpleMath.bs2
' Declare variables and use them to solve a few arithmetic problems.
' {$STAMP BS2}
' {$PBASIC 2.5}
value VAR Word ' Declare variables
anotherValue VAR Word
value = 500 ' Initialize variables
anotherValue = 2000
DEBUG ? value ' Display values
DEBUG ? anotherValue
value = 10 * anotherValue ' Perform operations
DEBUG ? value ' Display values again
DEBUG ? anotherValue
程序VariablesAndSimpleMath.bs2是如何工作的
下面的代码定义了两个字变量:value 和 anotherValue。
value VAR Word ' Declare variables
anotherValue VAR Word
然后,初始化变量,即给刚刚声明的变量赋上你决定的初始值。这两条指令执行后,value的值是500,anotherValue的值是2000。
value = 500 ' Initialize variables
anotherValue = 2000
随后的DEBUG指令帮助你了解初始化变量后每个变量存储的数值,因为给value赋值是500,
anotherValue赋值2000,因此DEBUG指令向调试终端发送信息:“value = 500” 和 “anotherValue
= 2000”并显示。
DEBUG ? value ' Display values
DEBUG ? anotherValue
这里又新引入了一个DEBUG指令的格式说明字符“?”,该格式说明字符用在一个变量名之前,使DEBUG终端显示其名称,以及存储在该变量中的数值,然后回车。这样对于查询一个变量的内容非常方便。
下面三行的疑问是:调试终端将显示什么?答案是value的值是anotherValue的10倍,因为anotherValue的值是2000,那么value就是20000,而变量anotherValue不变。.
value = 10 * anotherValue ' Perform operations
DEBUG ? value ' Display values again
DEBUG ? anotherValue
该你了――用负数计算
如果你想做一些包含负数的计算,你可以使用DEBUG指令的SDEC格式说明来显示。下面的例子能通过修改程序VariablesAndSimpleMath.bs2得到。
删除程序VariablesAndSimpleMath.bs2的下面部分:
value = 10 * anotherValue ' Perform operations
DEBUG ? value ' Display values again
改成如下代码:
value = value - anotherValue ' Answer = -1500
DEBUG "value = ", SDEC value, CR ' Display values again
运行更改后的程序并验证value的值是否由500变为-1500。
计数并控制循环次数最方便的控制一段代码执行次数的方法是利用FOR…NEXT循环,语法如下:
FOR Counter = StartValue TO EndValue {STEP StepValue} … NEXT省略号“…”表示你可以在FOR 和NEXT之间放一条或多条的程序指令。使用前面的循环前要确保先声明一个变量替代参数Counter。参数StartValue 和EndValue可以是数值也可以是变量。语法描述中位于大括号{ }之间的东西,表示是可选参数。换句话说,没有它FOR…NEXT仍将工作,但是你可以将之用于一些特殊目的。
你没有必要一定要将变量命名为“counter”,例如,你可以用“myCounter”
myCounter VAR Word
下面是一个用myCounter来计数的FOR…NEXT循环例程。每执行一次循环,它会显示
myCounter的值。
例程: CountToTen.bs2
输入、保存并运行程序CountToTen.bs2。
' CountToTen.bs2
' Use a variable in a FOR...NEXT loop.
' {$STAMP BS2}
' {$PBASIC 2.5}
myCounter VAR Word
FOR myCounter = 1 TO 10
DEBUG ? myCounter
DEBUG CR, "All done!"
该你了――不同的初始值和终值以及计数步长
你可以给变量StartValue 和EndValue 赋不同的值
修改FOR…NEXT循环如下:
FOR myCounter = 21 TO 9
DEBUG ? myCounter
运行修改后的程序。BASIC Stamp往下计数代替了往上计数,你注意到了吗?只要StartValue的值大于EndValue,程序就会这样运行。
还记得可选参数{STEP StepValue}吗? 你可以用它来使myCounter以不同步长计数,而不是按9, 10, 11…这样每次增1来计数。例如,你可以让它每次增加2(9, 11,13…)或增加5 (10, 15, 20…)或任何你给出的StepValue,递增或递减都可以。下面的例子是以3为步长向下计数。
增加STEP 3到FOR…NEXT循环,如下所示:
FOR myCounter = 21 TO 9 STEP 3
DEBUG ? myCounter
运行更改后的程序,验证是否以3为步长递减。
任务4:测试伺服电机
在装配机器人之前还有最后一件事要做,那就是测试伺服电机。在本任务中,你将运行程序,使电机以不同速度和方向旋转。通过测试,可以确保在装配之前电机工作是正常的。
这是一个子系统测试的例子。对子系统进行测试是开发过程的好习惯,它不仅仅是让你拆开机器人,而是在组装之前尽可能修补可能出现的一些问题。
所谓子系统测试是在将一些分立的部件组装成一个更大的设备之前先对各分立的部件进行测试的过程。在进行机器人竞赛时,这对于你赢得比赛很有帮助。对于工程师而言,无论是开发玩具、汽车和视频游戏,还是开发航天飞机和火星机器人,这都是一个最为基本的技能。特别是在非常复杂的设备中,如果没有事先对子系统进行测试,要找出存在的问题几乎不可能。例如,在太空项目中,如果要拆开一个原形设备以进行维修,将耗费数百万美元。因此,在这样的项目中,必须对所有子系统进行彻底而严格的测试。
脉宽控制电机的速度和方向
回忆前面的电机零点标定,脉宽为1.5 ms的控制信号使电机保持不动,这是通过给PULSOUT指令参数Duration 赋值为750来实现的。那么如果控制信号的脉冲宽度(简称脉宽)不是1.5 ms,结果会是怎样呢?
现在编程发送了一系列1.3 ms的脉冲给伺服电机,你仔细研究一下这一系列脉冲,看它怎样控制电机。图2-9所示是连续旋转电机将以全速顺时针旋转,全速的范围大约是每分钟50 到 60 转(RPM),即约每秒种转一圈。
你可以用下面的程序
ServoP13Clockwise.bs2将这些脉冲
序列发送给端口P13。
例程: ServoP13Clockwise.bs2
输入、保存并运行程序 ServoP13Clockwise.bs2。
验证电机的输出轴是否顺时针旋转,并且速度在50 到 60 RPM之间。
' ServoP13Clockwise.bs2
' Run the servo connected to P13 at full speed clockwise.
' {$STAMP BS2}
' {$PBASIC 2.5}
DEBUG "Program Running!"
PULSOUT 13, 650
注意:1.3 ms的脉冲需要PULSOUT指令的参数Duration的值为650,是一个小于750的数。所有的脉宽都小于1.5 ms,即PULSOUT 指令的Duration参数要小于750,才能使电机顺时针旋转。
当然,在进行上述验证时,一定要将伺服电机连接到控制端口上,并接上电源。
例程: ServoP12Clockwise.bs2将PULSOUT 指令的参数PIN的值由13改为12,就可以使连接到P12的电机以全速顺时针旋转。
把程序ServoP13Clockwise.bs2 另存为ServoP12Clockwise.bs2.
把PULSOUT 指令的参数PIN的值由13改为12,更新注释。
运行程序验证连接 P12 的电机是否顺时针旋转,并且速度在50 到 60 RPM 之间。
' ServoP12Clockwise.bs2
' Run the servo connected to P12 at full speed clockwise.
' {$STAMP BS2}
' {$PBASIC 2.5}
DEBUG "Program Running!"
PULSOUT 12, 650
例程:ServoP12Counterclockwise.bs2
你可能已经猜到将
PULSOUT 指令的参数
Duration设置为大于750的数
会使伺服电机逆时针旋转。
Duration的值为850可以发出
1.7 ms宽度的脉冲,如图2-10
所示,这将使伺服电机全速逆
时针旋转。
将 程 序ServoP12Clockwise.bs2 另存为ServoP12Counterclockwise.bs2
把 PULSOUT 指令的参数Duration 改为850。
运行程序,验证连接 P12 的电机是否逆时针旋转,并且速度在50 到 60 RPM 之间。
' ServoP12Counterclockwise.bs2
' Run the servo connected to P12 at full speed counterclockwise.
' {$STAMP BS2}
' {$PBASIC 2.5}
DEBUG "Program Running!"
PULSOUT 12, 850
修改上述例程中PULSOUT指令的参数PIN,使连接P13的电机逆时针转动
例程: ServosP13CcwP12Cw.bs2
你可以使用两个PULSOUT指令使两个伺服电机同时旋转,你也可以使它们向相互相反的方向旋转。
输入、保存并运行程序下面的程序ServosP13CcwP12Cw.bs2。
运行程序,验证连接到P13的电机是否全速逆时针旋转,而连接到P12的电机全速顺时针旋转。
' ServosP13CcwP12Cw.bs2
' Run the servo connected to P13 at full speed counterclockwise
' and the servo connected to P12 at full speed clockwise.
' {$STAMP BS2}
' {$PBASIC 2.5}
DEBUG "Program Running!"
PULSOUT 13, 850
PULSOUT 12, 650
下面的理解非常重要。想一想:当电机安装在机器人底盘的两侧,一个顺时针旋转而另一个逆时针旋转,将使机器人沿直线运动。听起来是否有些古怪?如果你无法理解,试试这样:
l ? 把两个电机背靠背放在一起重新运行程序。
该你了――调整速度和方向
两个电机全速转动时,两个PULSOUT指令的参数 Duration有四种不同的组合,在后面的章节中编写机器人运动的程序时,这些组合经常会被用到。程序ServosP13CcwP12Cw.bs2发送了这些组合中的一种,850给P13 ,650 给P12。通过测试不同的运动组合,并填写表2-1的运动描述栏,你将慢慢熟悉这些组合并为你自己建立一个参考。当机器人安装完成后,尝试一下这些运动组合,填写下表的运动行为栏,你就会看到每种数据组合使它怎样运动。
l ? 试试下面的PULSOUT Duration组合,将结果填写到描述列。
FOR…NEXT循环控制电机的运行时间
到目前为止,你已经完全理解了脉冲宽度控制连续旋转电机速度和方向的原理。控制电机速度和方向的方法是非常简单的,当然也有一个简单的方法来控制电机运行的时间,那就是用
FOR…NEXT循环。
下面是FOR…NEXT循环的例子,它会使电机运行几秒钟。
FOR COUNTER = 1 TO 100
PULSOUT 13, 850
你计算一下这段代码能使电机转动的确切时间。每执行循环一次,PULSOUT指令将持续1.7ms,PAUSE指令持续20ms,执行一次循环大概额外需要1.3 ms,那么FOR…NEXT循环整体执行一次的时间是:1.7 ms + 20 ms + 1.3 ms = 23.0 ms,本循环执行100次,即就是23.0 ms乘以100,时间=100*23.0毫秒=100*0.023秒=2.3秒。
假如你要让电机运行4.6秒,FOR…NEXT循环必须执行上面两倍的次数。FOR counter = 1 TO 200
PULSOUT 13, 850
例程: ControlServoRunTimes.bs2
输入、保存并运行程序ControlServoRunTimes.bs2.
验证是否与P13 连接的电机首先逆时针旋转2.3秒,然后与P12 连接的电机旋转4.6秒。
' ControlServoRunTimes.bs2
' Run the P13 servo at full speed counterclockwise for 2.3 s, then
' run the P12 servo for twice as long.
' {$STAMP BS2}
' {$PBASIC 2.5}
DEBUG "Program Running!"
counter VAR Byte
FOR counter = 1 TO 100
PULSOUT 13, 850
FOR counter = 1 TO 200
PULSOUT 12, 850
假如你想让两个电机同时都运行,给与P13连接的电机发出850的脉宽,给与P12连接的电机发
出650的脉宽,现在执行一次循环要用的时间是:
1.7ms – 与P13连接的电机
1.3ms – 与P12连接的电机
20 ms – 中断持续时间
1.6 ms – 代码执行时间
--------- ------------------------------
一共是24.6 ms
如果你想使电机运行一段确定的时间,可以计算出需要循环的次数(或者说需要发出的脉冲数
量)如下:
脉冲数量=时间/0.0246秒=时间/0.0246
假如你想让电机运行3秒,计算如下:
脉冲数量=3 / 0.0246 = 122
现在,你可以将FOR…NEXT循环中EndValue的值设为122,程序如下:
FOR counter = 1 TO 122
PULSOUT 13, 850
PULSOUT 12, 650
例程: BothServosThreeSeconds.bs2
下面的程序是让两个电机先向一个方向旋转3秒,然后反向旋转3秒钟的例子。
l ? 输入、保存并运行程序BothServosThreeSeconds.bs2。
' BothServosThreeSeconds.bs2
' Run both servos in opposite directions for three seconds, then reverse
' the direction of both servos and run another three seconds.
' {$STAMP BS2}
' {$PBASIC 2.5}
DEBUG "Program Running!"
counter VAR Byte
FOR counter = 1 TO 122
PULSOUT 13, 850
PULSOUT 12, 650
FOR counter = 1 TO 122
PULSOUT 13, 650
PULSOUT 12, 850
验证一下每个电机是否沿一个方向运行3秒然后反方向运行3秒。你是否注意到当电机同时反向的时候,它们总是保持以相反的方向运行?这将有什么作用呢?
该你了 – 预计电机运行时间
设定一个你想让电机运行的时间。
用0.024除时间
所得到的结果就是你需要执行的循环次数。
更改程序BothServosThreeSeconds.bs2使两个电机都运行你所设定的时间。
比较预计的时间与实际运行的时间。
记住当做完实验后断开系统的电源。
工程素质和技能归纳
帕拉斯伺服电机的接线图和接线;
伺服电机控制信号的监控电路和电路搭建;
伺服电机的零点校准和PULSOUT、PAUSE和循环的使用;
PABSIC变量的使用和循环次数的控制;
电机测试和子系统测试;
两个电机的同时运动以及运动时间的控制等。10HZ步长可调频率方波信号发生器
10HZ步长可调频率方波信号发生器。
10HZ步长可调频率方波信号发生器下载
下载资料需要,并消耗一定积分。
下载此资料的人还喜欢:
技术交流、我要发言! 发表评论可获取积分! 请遵守相关规定。
本周热点资料
电子资料热门词
上传者其它资料
单片机下载排行region-detail-title
tektronix/泰克PSPL10050A可编程脉冲发生器信号发生器 包邮
region-detail-gallery
用阿里巴巴客户端扫码
手机下单享受额外优惠
region-detail-property
享受会员价、淘宝数据等更多权益
手机下单更便宜
tektronix/泰克
PSPL10050A
(10台可售)
申请已发出!
已选0台/0.00元
一般情况下:
划线价格:划线的价格可能是商品的销售指导价或该商品的曾经展示过的销售价等,并非原价,仅供参考。
未划线价格:未划线的价格是商品在阿里巴巴中国站上的销售标价,具体的成交价格根据商品参加活动,或因用户使用优惠券等发生变化,最终以订单结算页价格为准。
活动预热状态下:
划线价格:划线的价格是商品在目前活动预热状态下的销售标价,并非原价,具体的成交价可能因用户使用优惠券等发生变化,最终以订单结算页价格为准。
未划线价格:未划线的价格可能是商品即将参加活动的活动价,仅供参考,具体活动时的成交价可能因用户使用优惠券等发生变化,最终以活动是订单结算页价格为准。
*注:前述说明仅当出现价格比较时有效。若商家单独对划线价格进行说明的,以商家的表述为准。
企业身份认证
联系卖家:
交易勋章:
交易勋章-A级
供应等级:
在线销售产品金额等级,彰显供应商在线销售服务能力
经营模式:
所在地区:matlab simulink中,仿真步长和采样时间的关系是什么_百度知道
matlab simulink中,仿真步长和采样时间的关系是什么
答题抽奖
首次认真答题后
即可获得3次抽奖机会,100%中奖。
南霸天mxw知道合伙人
来自知道合伙人认证行家
知道合伙人
数学类行家
采纳数:6290
获赞数:105557
本人毕业于河西学院计算机系,本科学位,自2008年毕业以来任九年级数学教师至今。
  一、仿真步长  积分与微分是互逆的,对微分方程进行积分,就可求解,但那是解析法,有时候无法运用。对一个曲线(包括直线)方程求积分,其实就是求曲线与横轴围成的面积。该面积可以用一系列间隔很小的面积块相加得到。面积块采用矩形去近似,就得到了欧拉法,采用梯形去近似,就得到了梯形法。这些小间隔的宽度就是计算步长。显然,纯粹从精度的角度考虑,步长越小越精确,因为近似面积更接近实际图形面积。  采用泰勒公式展开,也可以求出这些数值解法公式,数值解法是把连续问题采用离散方法去近似求解。  二、采样周期  采样周期是对一个实际信号测量时,相邻两次测量之间的时间间隔。有时候,采样周期和计算步长相似,但采样周期要考虑实际限制,且是时间单位,而计算步长不一定是时间单位,且相对自由些。两者在数值上没必然联系。对于同一问题,且都是时间量纲的话,采样周期大于等于计算步长,前者是后者的整数倍。
ruifengcao知道合伙人
ruifengcao
采纳数:1719
获赞数:7505
这个没有多大关系的仿真步长是指模型仿真的时间间隔采样时间是针对某一个信号来说的!
仿真步长能麻烦您说的再详细些吗?将连续系统离散化时,要设定的采样周期,是指的采样时间吗?还有就是这两者跟整个仿真时间的关系是什么呢?问题有点多。。困扰我好久了,真心感谢您的回答~
对于连续系统离散化的问题,这里的采样时间和仿真步长一般是一样的!
本回答被提问者采纳
为你推荐:
其他类似问题
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。}

我要回帖

更多关于 幅度 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信