如何编程舵机使其转动?

如何编程舵机使其转动?,第1张

舵机是一种位置伺服的驱动器,主要是由外壳、电路板、无核心马达、齿轮与位置检测器所构成。其工作原理是由接收机或者单片机发出信号给舵机,其内部有一个基准电路,产生周期为20ms,宽度为猛数1.5ms 的基准信号,将获得的直流偏置电压与电位器的电压比较,获得电压差输出。经由电路板上的IC 判断转动方向,再驱动无核心马达开始转动,透过减速齿轮将动力传至摆臂拍知行,同时由位置检测器送回信号,判断是否已经到达定位。适用于那些需要角度不断变化并可以保持的控制系统。当电机转速一定时,通过级联减速齿轮带动电位器旋转,使得电压差为0,电机停止转动。一般舵机旋转的角度范围是0 度到180 度袭哗。

按照SOLAS公约规定第II-1第29条 *** 舵装置1除另有明文规定外,每艘船舶应配备使主管机关满意的主 *** 舵装置和辅助 *** 舵装置。主 *** 舵装置和辅助 *** 舵装置的布置应使两者中之一在发生故障时,不会导致另一装置不能工作。2.1所有 *** 舵装置的部件和舵杆应为主管机关满意的坚固和可靠的构造。对于非双套的必要部件的适用性应特别注意。任何这类必要部件,如合适时,应采用耐磨轴承,如球轴承、滚子轴承或者能持久润滑或设有润滑装置的套筒轴承。2.2对于承受内部液压的管系和其他 *** 念铅舵装置的部件,确定其尺寸计算所用的设计压力应至少为本条3.2所指运行状况下可能出现的最大工作压力的1.25倍,同时应考虑在该系统低压一侧可能存在的压力。根据主管机关的意见,管系和部件的设计应采用疲劳衡准,同时考虑动力负荷所产生的脉动压力。2.3凡在液压系统中能被隔断的和由于动力源或外力作用能产生压力的任何部件,应设置安全阀。安全阀的调定应不超过设计压力。安全阀应有足够尺寸并布置成能够避免过度升高的压力超过设计压力。3主 *** 舵装置和舵杆应:.1具有足够强度,并能在验证的最大营运前进航速下 *** 纵船舶;.2能在船舶最深航海吃水和以最大营运前进航速前进时将舵自一舷35°转至另一舷35°以及于相同条件下在不超过28s内将舵自一舷35°转至另一舷30°;.3动力 *** 纵,以必要时满足本条3.2的要求,以及在任何情况下主管机关要求舵柄处的舵杆直径超过120mm时(不包括冰区加强)的前高陆要求;和.4设计成在最大后退航速时不致损坏;但是这个设计要求不需要用最大后退航速和最大舵角的试航来验证。4辅助 *** 舵装置应:.1具有足够强度和足以在可航行的航速下 *** 纵船舶,并能于紧急时迅速投入工作;.2能在船舶最深航海吃水和以最大营运前进航速的一半或7节前进时(取大者),在不超过60s内将舵自一舷15°转至另一舷15°;和.3动力 *** 纵,以必要时满足本条4.2的要求,以及在任何情况下主管机关要求舵柄处舵杆直径超过230mm时(不包括冰区加强)的要求。5主 *** 舵装置和辅助 *** 舵装置的动力设备应:.1布置成失电而再次获得电源供慧顷应时能自动再起动;和.2能从驾驶室某一位置投入工作。 *** 舵装置的任何一台动力设备失电时,应在驾驶室里发出听觉和视觉报警。6.1如果 *** 舵装置包括有两台或几台相同的动力设备,则可不必设置辅助 *** 舵装置,但:.1在客船上,当任一台动力设备不能运转时,主 *** 舵装置仍能按本条3.2要求 *** 舵;.2在货船上,当所有动力设备都运转时,主 *** 舵装置能按本条3.2的要求 *** 舵;.3主 *** 舵装置布置成当其管系或1台动力设备发生单项故障时,此故障能被隔离,使 *** 舵能力能够保持或迅速恢复。6.2直至1986年9月1日止,主管机关可以接受设置经证实具有可靠性记录但不符合本条6.1.3对液压系统要求的 *** 舵装置。6.3非液压型式的 *** 舵装置应达到等效的标准,并使主管机关满意。7应按下列要求设 *** 舵装置的控制装置:.1对于主 *** 舵装置,在驾驶室和舵机舱;.2当主 *** 舵装置按照本条6布置,并由两个独立的控制系统控制时,该两个控制系统均能在驾驶室进行 *** 作,但不必设置两套 *** 舵手轮或 *** 舵手柄。如果控制系统是由液压遥控传动装置组成时,则除了10,000总吨及以上的油船、化学品船或气体运输船外,不必设置第二套独立控制系统;.3对于位于舵机舱的辅助 *** 舵装置,如系动力 *** 纵,也应能在驾驶室进行 *** 作,并应独立于主 *** 舵装置的控制系统。8能从驾驶室 *** 作的任何主 *** 舵装置和辅助 *** 舵装置的控制系统应符合下列要求:.1如系电动者,应由在舵机室内 *** 舵装置电力线路上一点设独立电路供电,或由向 *** 舵装置电力线路供电的配电板上邻近该电力线路处的一点直接供电;.2应在舵机室内设有将驾驶室 *** 作的控制系统与其所控制的 *** 舵装置断开的装置;.3系统能从驾驶室某一位置投入工作;.4当控制系统的电源供应发生故障时,应在驾驶室发出听觉和视觉报警;和.5应仅对 *** 舵装置控制供电线路设有短路保护。9本条和第30条要求的电力线路和 *** 舵装置系统以及相关的部件、电缆和管子应在它们的整个长度范围内尽可能地分离。10驾驶室与舵机舱之间应设有通信设施。11舵角位置应:.1当主 *** 舵装置系动力 *** 纵时,在驾驶室显示。舵角指示应独立于 *** 舵装置控制系统;.2能在舵机舱内辨认出来。12液压 *** 纵的 *** 舵装置应设有下列设施:.1能针对该液压系统的型式和设计保持液体清洁的装置;.2每个液体贮存器设低位警报器,以便确切和尽早地指示液体泄漏。应在驾驶室和机器处所内易于观察的地方发出听觉和视觉报警;和.3当主 *** 舵装置要求动力 *** 纵时,设置一个固定储存柜,其容量足以至少为一个动力执行系统(包括贮存器)进行再充液。储存柜应用管系固定联结以使能从舵机舱内容易地再次为液压系统充液,并应设有液位指示器。13舵机舱应:.1易于到达,并尽可能与机器处所分开;且.2有适当的布置以保证有到达 *** 舵装置和控制器的工作通道。这些布置应包括扶手栏杆和格子板或其他防滑地板以保证液体泄漏时有适宜的工作条件。14如果要求舵柄处舵杆直径超过230mm(不包括冰区加强),应设有由应急电源或位于舵机舱内的独立动力源在45s内自动供电的替代动力源,其容量至少满足供应符合本条4.2要求的 *** 舵装置动力设备及其有关的控制系统和舵角指示器。此独立动力源应只用于上述目的。每艘10,000总吨及以上的船舶,替代动力源应具有至少连续运转30min的能力,在任何其他船舶上则至少为10min。1510,000总吨及以上的每艘油船、化学品船或气体运输船和70,000总吨及以上的每艘其他船舶,主 *** 舵装置应由符合本条6规定的两台或两台以上相同的动力设备组成。1610,000总吨及以上的每艘油船、化学品船或气体运输船,除满足本条17的规定外,应符合如下要求:.1主 *** 舵装置应布置成当由于主 *** 舵装置的一个动力执行系统的任何部件(舵柄、舵扇或为同样目的服务的部件除外)发生单项故障,或由于舵执行器卡住以致 *** 舵能力丧失时, *** 舵能力应在一个动力执行系统失效后不大于45s内重新获得;.2主 *** 舵装置应包括:.2.1两个独立和分开的动力执行系统,每个系统均满足本条3.2的要求;或.2.2至少两个相同的动力执行系统,在正常运转中同时工作时,应能满足本条3.2的要求。当需要符合此要求时,液压动力执行系统应设有交叉联结。一个系统中液体的流失应能发现,有缺陷的系统应能自动隔离,以使另一个或几个执行系统能保持全面运转。.3非液压型式的 *** 舵装置应能达到等效标准。1710,000总吨及以上,但小于100,000载重吨的油船、化学品船或气体运输船,如果能够达到等效安全标准,则可允许采用不同于本条16所述的解决法,即对舵的一个或几个执行器不必应用单项故障衡准,而且:.1由于管系或一台动力设备的任何部件发生单项故障而丧失了 *** 舵能力,应在45s内重新获得 *** 舵能力;和.2如果 *** 舵装置只包括单个舵执行器,则应特别注意在设计中对所使用的材料、密封装置的安装、试验检查和有效维护的要求进行包括疲劳分析和断裂力学分析(如适用)在内的应力分析。在考虑上述情况时,主管机关应采用包括本组织通过的《10,000总吨及以上但小于100,000载重吨的油船、化学品船和气体运输船非双套舵执行器验收指南》的各项规定。18对于10,000总吨及以上但小于70,000载重吨的油船、化学品船或气体运输船,至1986年9月1日止,主管机关可接受具有可靠性记录但不符合本条16中对液压系统要求的单项故障衡准的 *** 舵装置系统。191984年9月1日以前建造的10,000总吨及以上的每艘油船、化学品船或气体运输船应不迟于1986年9月1日符合下列要求:.1本条7.1、8.2、8.4、10、11、12.2、12.3和13.2的要求;.2应设有两个独立 *** 舵装置控制系统,每个系统均能从驾驶室 *** 作。但并不要求双套舵轮或 *** 舵柄;.3如在 *** 作中 *** 舵装置控制系统发生损坏,第二套系统应能从驾驶室立即投入 *** 作;和.4每个 *** 舵装置控制系统,如系电动者,应由 *** 舵装置电力线路设独立电路供电,或从向 *** 舵装置电力线路供电的电路板上邻近该电力线路处的一点直接供电。20除本条19的要求外,1984年9月1日以前建造的40,000总吨及以上的每艘油船、化学品船或气体运输船,其 *** 舵装置应在不迟于1988年9月1日布置成当管系或其中1台动力设备发生单项故障时,能够保持 *** 舵能力,或舵的运动能加以限制,以使 *** 舵能力迅速重新获得。这应由下列措施来实现:.1独立的限舵设施;或.2可人工 *** 作速动阀将一个或几个执行器与外部液压管系隔离开,以及用固定的独立动力泵和管系来直接补充执行器的设施;或.3如各液压动力系统是交叉联结的,则应作适当布置以保证一个系统中液体的流失能被发现,有缺陷的系统能自动地或从驾驶室加以隔离,以使其他系统能保持全面运转。第30条电动和电动液压 *** 舵装置的附加要求1对于电动和电动液压 *** 舵装置,应在驾驶室和适当的主机控制位置装设指示其电动机正在运转的设备。2由1台或几台动力设备组成的每一电动或电动液压 *** 舵装置至少应由两个自主配电板直接供电的专用电路来供电;但是,其中之一可以由应急配电板供电。与电动或电动液压主 *** 舵装置相联系的电动或电动液压辅助 *** 舵装置可与向此主 *** 舵装置供电的电路之一连接。向电动或电动液压 *** 舵装置供电的电路应有足够容量,以便能同时向与它连接且可能需要同时工作的所有电动机供电。3这类电路和电动机应设有短路保护和过载报警装置。包括起动电流在内的过电流保护装置(如有时),应不小于所保护电路或电动机全负荷电流的两倍,并应布置成能允许适当的起动电流通过。如采用三相供电,应设有能指示任一相所发生故障的报警装置。本节所要求的警报应为听觉和视觉报警,并应位于正常控制主机的主机处所或控制室内明显位置上,并应符合第51条适用的要求。4在小于1,600总吨的船上,按第29.4.3条要求为动力 *** 作的辅助 *** 舵装置,如不是电动的或是由原来用作其他用途的电动机来驱动的,则主 *** 舵装置可由来自主配电板的一个电路供电。当这类原来用作其他用途的电动机作为这种辅助舵装置的动力时,如主管机关对其保护装置表示满意,并认为其满足适用于辅助 *** 舵装置的第29.5.1条和29.5.2条以及第29.7.3条的要求时,可免除本条3的要求。第V章第25条 *** 舵装置的 *** 作在需要特别谨慎驾驶的区域,船舶 *** 舵装置的各台动力设备如能同时工作,则这种设备应有1台以上进行工作。第26条 *** 舵装置:试验和演习1船舶开航前12h之内,应由船员对 *** 舵装置进行校核和试验。试验程序(如适用时)应包括下述 *** 作:.1主 *** 舵装置;.2辅助 *** 舵装置;.3 *** 舵装置遥控系统;.4驾驶室内的 *** 舵位置;.5应急动力供应;.6相对于舵实际位置的舵角指示器;.7 *** 舵装置遥控系统动力故障报警器;.8 *** 舵装置动力设备故障报警器;和.9自动隔断装置及其他自动设备。2校核和试验应包括:.1按照所要求的 *** 舵装置能力进行 *** 满舵试验;.2 *** 舵装置及其联动部件的外观检查;和.3驾驶室与舵机室之间通信手段的工作试验。3.1在驾驶室及舵机室内,应永久展示 *** 舵装置遥控系统和 *** 舵装置动力设备转换程序的简单 *** 作说明,并附有方框图。3.2所有与 *** 舵装置的 *** 作和/或维护保养有关的船舶驾驶员,应熟悉船上所装的 *** 舵系统的 *** 作以及从一个系统转换到另一系统的程序。4除本条1和2所述的常规校核和试验外,应至少每3个月进行一次应急 *** 舵演习,以练习应急 *** 舵程序。演习应包括在舵机室内的直接控制、与驾驶室的通信程序以及(如适用时)转换动力供应的 *** 作。5对于定期从事短程航行的船舶,主管机关可免除本条1和2所规定的核查和试验要求,但这些船舶应每周至少进行一次这样的校核和试验。6进行本条1和2所规定之校核和试验的日期,以及进行本条4所述应急 *** 舵演习的日期和详细内容应作记录。

int readPin = 0 //棚肢用来连接电位器

int servopin = 7 //定义舵机接口数字接链蠢世口7

void servopulse(int angle)//定档让义一个脉冲函数

{

int pulsewidth=(angle*11)+500 //将角度转化为500-2480的脉宽值

digitalWrite(servopin,HIGH) //将舵机接口电平至高

delayMicroseconds(pulsewidth) //延时脉宽值的微秒数

digitalWrite(servopin,LOW)//将舵机接口电平至低

delayMicroseconds(20000-pulsewidth)

}

voidsetup()

{

pinMode(servopin,OUTPUT)//设定舵机接口为输出接口

}

voidloop()

{

//读取电位器(传感器)的读数,接到3.3V,值范围从0到660左右

int readValue = analogRead(readPin)

//把值的范围映射到0到165左右

int angle = readValue / 4

//发送50个脉冲

for(int i=0i<50i++)

{

//引用脉冲函数

servopulse(angle)

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12408761.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存