ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

基于DRV8818与PIC18的双极步进电机控制板设计实践

基于DRV8818与PIC18的双极步进电机控制板设计实践 这几年我做工业设备控制板双极步进电机相关的项目至少占了一半。用得最顺手的组合就是 TI 的 DRV8818PWPR 驱动芯片配 Microchip 的 PIC18F47K40 单片机尤其适合小型机器人关节、分度转台和皮带传送机构。它俩都不是什么新器件但组合起来能覆盖从简单送料到多工位分度的很多应用。可能有人会说步进电机不是被伺服压着打吗实际上在中等精度、成本敏感的现场双极步进电机加上一体化驱动芯片依然是主流选择。DRV8818PWPR 把双H桥、微步分度、电流斩波和保护电路全集成进去了而 PIC18F47K40 则负责精确产生 STEP 脉冲、处理加减速和监控故障。这篇文章我就把从选型、硬件布线、软件逻辑到调试排障的完整经验整理一遍给正在做步进控制板的朋友参考。1. 选型逻辑为什么在伺服包围下还要用 DRV8818 PIC18F47K401.1 工业应用对电机驱动的真实要求不只要转起来很多刚入行的朋友会有疑问现在伺服电机那么普及为什么还要用步进我先说结论在中等精度、低成本、低速高扭矩的场合双极步进电机依然是综合性价比最高的方案。一个带行星减速机的NEMA23步进电机配合合适的驱动板完全可以把重复定位精度做到0.05毫米级别而整套电气成本可能只是伺服的十分之一。维护也简单没有编码器对零的麻烦断电后位置虽然会丢但很多设备本来就靠限位开关回原点。所以我不是在否定伺服而是说在承认步进劣势的前提下它仍然是工业设备里大量存在的执行元件。一旦决定用步进电机接下来就要选驱动方式。工业应用对驱动器的要求很明确供电电压范围要能覆盖常见的12V、24V、48V电源能输出足够大的相电流至少1A到2.5A这个区间要有明确的故障反馈信号不能让设备带着故障闷头跑抗干扰能力要过关ESD、浪涌、群脉冲是常态最后是成本、体积和可靠性之间的平衡。如果全部自己用分立MOS管搭H桥光是死区时间、电流检测、保护逻辑就够写好几篇文章而且板子做出来可靠性也没有保证。这时候选择一颗集成驱动芯片是更务实的做法。1.2 DRV8818PWPR 的底牌双H桥、微步、电流斩波都在芯片里DRV8818PWPR 是 TI 面向双极步进电机的一款驱动芯片后缀 PWPR 表示 PowerPAD 的 HTSSOP 封装露出来的大焊盘可以直接往PCB上的铜箔区域散热。芯片内部集成了两个H桥可以直接驱动一个两相步进电机支持 STEP/DIR 接口单片机不需要去控制四个桥臂的PWM逻辑只需要给步进脉冲和方向电平芯片内部的分度器会自动把脉冲分配成A、B两相的正确导通顺序。微步细分最高做到1/8也就是说电机每转一圈需要的脉冲数可以乘8倍对平滑性和低频共振有明显改善。更重要的是电流调节部分。双极步进电机最怕的不是电压高而是电流不受控。DRV8818 内部有 PWM 电流斩波电路通过检测串联在H桥下管上的采样电阻上的压降跟 VREF 引脚给定的参考电压比较超过阈值就自动截断电流类似开关电源的恒流控制。它同时还支持多种衰减模式比如慢衰减和混合衰减不同模式对应不同的电流纹波、噪声和噪声这让它在现场噪声敏感的场合有了调整余地。再加上过流保护、过温保护、欠压锁定一颗芯片基本上把主引擎和断路保护都做进去了。选择 PWPR 封装而不是更小的 QFN 或者老式 SOP主要就是为了方便把热量导到PCB再说工业系统里很多设备装在封闭电柜里散热条件并不好。1.3 PIC18F47K40 凭什么当大脑不只是delay和中断驱动芯片再强也需要一个脑袋给它发脉冲。我选 PIC18F47K40 不是因为它花哨而是因为它在这方面实在太合适了。首先它的工作电压范围宽5V供电可以直接和驱动芯片的逻辑接口平齐不需要额外的电平转换。其次它的IO口耐压和驱动能力都不错可以直接驱动光耦输入或者直接接驱动芯片的STEP/DIR引脚当然我强烈建议加隔离。最关键是PIC18F47K40 并不是一颗普通的8位机它内置了独立于内核工作的外设比如 CLC可配置逻辑单元、CWG互补波形发生器、ADCC带计算功能的ADC。这些外设可以在CPU不参与的情况下完成一些实时任务比如捕获故障信号、合成互补PWM、周期检测等这对于步进控制非常有用。在实际项目中PIC18F47K40 的角色就是运动控制CPU接收上位机指令计算目标位置和速度通过定时器/CCP产生精确的STEP脉冲同时监控DRV8818的FAULT引脚一旦异常立即撤掉使能信号。整个过程不需要跑什么操作系统也不需要复杂的中断优先级管理一个简单的循环加几个外设中断就能做得非常可靠。很多人觉得8位机做不了运动控制其实是因为没有把算法的实时性要求和硬件外设结合起来用定时器中断去翻转一个IO口这是完全足够的关键看你怎么设计加减速状态机。1.4 与市面上常见替代方案的简单对比我在画板之前其实做了不少调研也对比过几种常见路线。下表简单列一下我当时的思考方案优势劣势适合场景成品步进驱动器PLC隔离好可靠性高有成熟参数面板体积大成本高调试依赖RS485/上位机大型设备、多轴联动较多3D打印机用 A4988/DRV8825 模块便宜资料多原型验证快散热弱保护不齐全工业级温升/EMC不过关实验室小负载MCU 分立H桥成本低完全自控死区、续流、过流保护全要自己写风险高小功率教学演示DRV8818PWPR PIC18F47K40集成度高电流范围合适保护齐全体积小需要自己做驱动板和底层软件前期开发量大中小设备核心控制板从表里可以看出来这个组合最适合的场景是你需要做一块真正用于现场设备的控制板而不是测试板。DRV8818 负责大电流和电机保护PIC18F47K40 负责逻辑和控制两者配合平衡了成本、可靠性和开发自由度。2. 硬件设计里最容易翻车的位置电流设定、散热、隔离2.1 电流设定电阻那点事VREF、RSENSE与电流的关系先说第一个也是我最希望你在画原理图前想清楚的电机电流到底怎么设定。DRV8818 的电流阈值近似满足ITRIP VREF / (10 × RSENSE)其中 VREF 是参考电压引脚的电压RSENSE 是每个H桥下管串联的采样电阻。这个公式只是工程估算具体系数要以你买到的芯片批次对应数据手册为准但设计思路是一样的。我习惯的做法是先定目标相电流再反推采样电阻。举例某NEMA23电机标称相电流1.5A我一般让斩波电流峰值略高于额定值比如1.6A~1.8A。如果 VREF 直接取3.3V或者经电位器分压到2.0V那么 RSENSE ≈ VREF / (10 × 1.7) ≈ 0.12Ω所以我选了0.1Ω的采样电阻再微调VREF到1.7V左右正好匹配。这里有几个实际经验第一采样电阻不能用普通贴片电阻完事一定要选低电感、低温度漂移的电流检测电阻而且是功率电阻虽然稳态平均电流不大但斩波瞬间会产生很大的脉冲电流普通电阻可能会引起波形畸变和温漂。第二采样电阻的PCB走线建议采用开尔文接法也就是把电阻两端的检测走线直接从电阻焊盘根部引出不要从负载电流主干上引出来否则你测到的压降里会叠加大量的铜箔压降导致电流设定不准确。第三VREF引脚要用滤波电容最好0.1µF靠近引脚放并在调试时用万用表确认VREF电压稳定很多“电机扭矩忽大忽小”的现象其实是VREF被噪声干扰造成的。2.2 PowerPAD 散热设计不是把芯片焊上就完了DRV8818PWPR 的 PowerPAD 是散热的关键通道。PowerPAD 在芯片底部有一个大的金属焊盘电路板对应位置必须开同样大小的焊盘并且通过多个过孔连接到背面的铜皮甚至整块地平面。我见过有人直接把PowerPAD单独焊在PCB上结果周围没有过孔底部就是一块孤立的铜热量只能从引脚传导芯片直接热到跳闸。工程上我是这么做的在PowerPAD旁边打一组过孔孔径0.3~0.4mm焊盘底部开一个连贯的导热区域正反面都覆铜并且铜箔面积尽量往芯片周围延伸。如果是双面玻纤板至少要做到正面和背面连起来如果结构允许用12mm×12mm以上的铜箔区域接散热片。计算要不要加散热片时可以粗略估算芯片功耗导通功耗大约等于两路H桥总导通电阻乘以RMS电流的平方还要加上开关损耗和续流损耗。以1.5A RMS电流为例如果总等效导通电阻在0.4Ω附近仅导通功耗就是0.9W加上开关损耗可能到1.5W左右如果在70℃的封闭电柜里芯片结温很容易超过100℃。所以不要只看电流规格热设计不过关芯片照样会触发OTP过温保护。设计初期就预留机械散热结构比等出了问题再加散热风扇好得多。2.3 隔离与逻辑电平工业现场的第一道防线步进控制板放到工业设备里最怕的不是自己出问题而是和外部强电干扰串在一起。我的习惯是电机供电和逻辑控制部分完全隔离开来至少要用光耦或数字隔离器把 PIC18F47K40 和 DRV8818 之间的 STEP、DIR、EN 信号隔开。为什么连EN也要隔离因为如果电机侧发生短路或者过压故障电压完全可能顺着控制线倒灌回单片机把整个控制板烧掉。使用高速光耦比如6N137或者数字隔离器比如ISO7741都可以注意光耦速度要跟得上最高STEP频率1/8微步下如果需要几十kHz脉冲普通低速光耦很容易直接把脉冲沿拉宽导致实际点位不准。隔离之后还要注意电平匹配。DRV8818 的逻辑输入阈值如果是TTL兼容那么3.3V或者5V都能驱动。但隔离器输出端的供电和电机侧的电源通常共用一个稳压源需要确保上电时序MCU先上电、电机VM再上电。因为如果VM先上电而MCU未开始初始化STEP/DIR引脚可能处于悬空状态驱动芯片会收到随机脉冲电机在软件没跑起来的时候就先乱走了这在设备上电瞬间非常危险。我在实际板子上会加一个电源监控芯片等逻辑电源稳定后再开启VM的输出同时在EN引脚加一个和实际使能极性匹配的默认电平电阻确保MCU未初始化时驱动芯片保持禁用。2.4 电源滤波和PCB布局稳定性的地基芯片再好电源脏了也白搭。DRV8818 的 VM 引脚旁边至少要放一组高频陶瓷电容和电解电容组合我常用的是 0.1µF 2.2µF 陶瓷电容紧挨芯片再加一个 47µF~100µF 的电解电容放在电源入口。电机是感性负载换向瞬间会在母线上拉出很大的电流尖峰如果电容不够VM电压会跌落可能触发欠压保护也可能通过光耦干扰到MCU。地线方面电机电流回路和逻辑地要在PCB上单点连接或通过磁珠连接不要让电机大电流流经逻辑电路的GND。另外DRV8818 的 STEP 和 DIR 引脚在输入端最好各加一个小阻值的串联电阻比如220Ω配合引脚附近的RC滤波可以吸收一部分来自线缆的干扰。如果是长线连接控制板与电机电机电缆一定要用双绞屏蔽线屏蔽层单端接地不要和逻辑地直接相连。这些都是老生常谈但真到现场排查EMC时每一条都可能是救命的。3. 软件控制框架如何让 PIC18F47K40 稳定吐出一条合格的 STEP 脉冲流3.1 步进脉冲的本质位置命令的分发方式步进电机系统的位置和脉冲是一一对应的一个 STEP 上升沿或者双沿取决于驱动器就表示电机前进一个最小步距角。DRV8818 的 STEP/DIR 接口本质是芯片把外部脉冲解码成两相桥臂的通断状态。所以控制软件最核心的任务就是确保规定时间内输出的脉冲数量精确且每个脉冲之间的时间间隔平滑。脉冲发多了或者发少了位置就会偏差脉冲间隔抖动太剧烈电机电流跟不上就会出现低频共振和失步。很多刚做步进控制的人喜欢用 delay 来翻转IO口这在几百Hz时勉强能用上到几千Hz甚至几十kHz就不行了。因为 delay 无法处理其他任务而且 interrupt 每次进来都要做大量现场保护和判断时间精度一塌糊涂。正确的思路是用硬件外设生成脉冲CPU 只负责改变外设的配置参数。PIC18F47K40 上可以选择 TMR0/TMR2 配合中断翻转IO也可以让 PWM/CCP 模块直接输出方波后者更适合连续高频率输出。3.2 用定时器中断产生脉冲最稳但不建议硬扛高频我早期的原型机就是用一个定时器中断翻转 STEP 引脚。思路比较简单设定定时器周期对应半个脉冲宽度每次中断翻转IO同时用计数器统计已经发出的脉冲数。这样频率越低越稳但在高频段比如20kHz意味着每25µs要进一次中断如果中断里还要判断方向、目标步数、加减速状态很容易把CPU占满而且中断延迟会导致脉冲周期抖动严重时会造成失步。所以我现在的实际产品里定时器中断只用来做低频后台任务实际的脉冲产生交给了PIC18F47K40的外设模块。如果你刚开始做原型验证定时器中断也完全可以跑起来但建议把频率限制在5kHz以下并且中断里只做最简单的操作翻转IO、计数器加一、比较目标值后立即关中断。加减速的计算放到主循环或者低频定时器里。至少这样能稳定支撑低速步进逻辑方便你把系统跑通。3.3 用硬件PWM模块输出STEPPIC18F47K40的实际做法要稳定输出高频率的 STEP 流我建议直接使用 PIC18F47K40 的 CCP 或 PWM 模块具体以你选用的型号外设为准。原理是配置一个 PWM 输出引脚频率就是STEP频率占空比设为50%并把这个PWM输出接到DRV8818的STEP引脚。方向则由另一个IO控制。要发出一段精确数量的脉冲可以在软件里启动一个计数器由PWM的周期触发中断每个周期表示一个步进中断里更新目标步数达到后关闭PWM输出。这样即便PWM频率达到20kHzCPU也只在每次PWM中断里执行一个简单的计数递减和判断负载很低。我一般会把PWM的频率重新加载做成动态的加速阶段每个PWM周期更新一次周期寄存器的值让输出脉冲频率从低速慢慢爬到高速。需要注意如果你用 PWM 模块占空比最好保持50%不要用PWM来调电流调电流是DRV8818的事你只需要保证沿质量。以下是一段示意性框架重点在于逻辑放在项目里还需要按实际板卡寄存器适配// 伪代码PWM中断里递减剩余步数到达目标关PWM void on_pwm_period_interrupt(void) { if (steps_remaining 0u) { steps_remaining--; if (steps_remaining 0u) { PWM_Disable(); } } } void move_steps(int32_t target, uint16_t freq) { steps_remaining (target 0) ? target : -target; DIR_Write(target 0); PWM_LoadFrequency(freq); PWM_Enable(); }实际项目中我会把 freq 在运动过程中按加减速曲线更新而不是固定不变。上面的伪代码只是告诉你“计数、判断、关断”这个最小逻辑。3.4 梯形加减速状态机让机构不抖、不丢步步进电机的失步大多发生在速度突变的时候。电机从静止直接跳到1500步/秒转子惯性跟不上磁场变化自然就会丢。解决办法是加减速曲线。最常用的是梯形加减速加速段频率线性上升匀速段保持设定速度减速段线性下降到最后一步。相比之下S形曲线更顺滑但计算复杂对低速应用收益有限所以我先实现了梯形效果已经足够。实现时我定义了一个简单的状态机包括 IDLE、ACCEL、RUN、DECEL 四个状态。在每个控制周期例如每1ms或2ms里计算当前频率如果处于 ACCEL则下一次PWM周期寄存器值减小频率升高并累计加速步数当累计加速步数达到设定值或者已经接近目标位置一半时切换到 DECEL如果位置路径很短来不及到达设定最大速度则在达到中点前就进入减速形成三角形速度曲线。梯形加减速的关键参数是加速度单位是“步/秒²”。我前期会在上位机里试出不失步的最大加速度然后留50%余量。比如实际达到20000步/秒²不失步设定就用10000。这样做的好处是即便负载有波动也不会轻易丢步代价是单次运动时间稍长但工业上更看重的是稳定可靠。代码层面加减速计算不能在PWM中断里做因为PWM中断需要严格的时间确定性加减速计算一旦有浮点、除法和查表会把中断时间拉长。我的做法是PWM中断只做步数递减和周期寄存器装载加减速曲线由一个低频定时器1ms或者主循环计算算出来的最新参数写到一个共享变量里PWM中断只读取共享变量。这里要注意共享变量的原子性问题PIC18F47K40的8位架构在读写16位或32位变量时可能被中断打断我在代码里用“先禁中断、再读写、再开中断”的方式保护。3.5 故障输入与使能控制把保护线做成硬实时软件再快也不如硬件逻辑可靠。DRV8818 的 FAULT 引脚在过流、过温、欠压时会拉低具体极性以芯片手册为准我用的版本是低有效。这颗信号我接到 PIC18F47K40 的外部中断引脚并且在该IO上使能内部上拉。同时用硬件逻辑保证只要FAULT一拉低MCU的中断立即执行把PWM输出关断、把EN引脚拉到禁用状态。这里不建议从主循环轮询去处理因为轮询延迟可能几十毫秒电机在故障期间还会继续走可能造成机械伤害。更稳妥的做法是把 EN 信号设计为低有效这样MCU复位时默认电平如果不驱动IO外部下拉电阻就会让EN处于禁用状态。我还会把FAULT反馈光耦和EN控制光耦放在一起当PIC18F47K40检测到故障后无论软件状态机在哪里都强制进入IDLE并置故障码。现场人员通过串口、数码管或者LED看到故障类型后重新给使能才开始下一次运动。这套软硬件联动的保护逻辑我测试了很多次比单纯靠软件状态判断要可靠得多。4. 上电调试与常见动作异常从波形和现象反推故障4.1 接线逻辑再确认一遍调试第一步不是上电而是把所有信号线对照原理图捋一遍。DRV8818 这边主要看 STEP、DIR、EN 三个输入以及 VM、GND、VREF、FAULT 这几个引脚。先确认 EN 逻辑是否匹配硬件设计如果EN是低有效那么MCU初始化之前引脚必须被下拉否则芯片会提前使能。方向信号同样要确定极性有的电机安装方向跟图纸相反可以在软件里加一个方向反向标志不要急着改线。上电顺序建议先给逻辑电源测量 PIC18F47K40 供电正常再给电机VM。VM大小最好等于电机额定电压范围的中值不要直接加到最大。第一次上电最好串一个限流电阻或者用带限流的直流电源电流限制先设为预期运行电流的1.5倍避免焊接短路造成二次损坏。我一般会在母线上加一个大电解电容防止上电瞬间浪涌冲击。4.2 用示波器读波形STEP、FAULT和相电流调试步进电机示波器是必须的。至少用两个通道一个测STEP脉冲一个测电机相电压或者采样电阻两端的电压。正常工作时STEP脉冲应该是标准的方波频率稳定沿没有严重畸变。如果你看到脉冲宽度明显不一致就要查PWM中断负载是不是太高了或者光耦带宽不够。测电机绕组电压可以看到阶梯状波形每个STEP对应一次换相绕组电压会呈现台阶式跳变同时叠加PWM斩波纹波。通过观察电流波形最简单的是用电流探头或者看采样电阻电压你能够判断电流设定是否合适如果电流波形的峰值接近设定ITRIP说明电阻和VREF的设置是准确的如果波形顶部平顶且很窄说明电流过大如果电机还没转就听到啸叫多半是衰减模式或微步设置不合适。FAULT引脚每次发生异常都会出现脉冲我把FAULT接到示波器的第三个通道这样出现问题时能立刻看到故障发生时刻与STEP、电流波形之间的关系排查效率高很多。4.3 电机不转或乱转的排查顺序遇到电机完全不动不要先怀疑芯片坏了按顺序排查用万用表量VM电压是否在正常范围DRV8818 的 VM 引脚是否确实有电量VREF电压确认电流设定基准不是0手动给STEP引脚一个慢速方波比如用信号发生器10Hz看电机是否一步一步走如果手动可以动再查单片机程序有没有输出脉冲如果单片机有输出但电机不动检查EN信号和FAULT状态。曾经遇到过一次尴尬问题FAULT一直为低导致芯片始终禁用电机怎么都不走。后来查出来是采样电阻焊反了位一个电阻的阻值变成了原来的十倍芯片误判为过流。所以调试时把FAULT引脚引到LED或者用示波器盯住能省很多时间。单向转的问题则优先检查DIR信号和电机相线顺序把A/A-和B/B-任意交换一组电机旋转方向会反转确认这一点后再确认软件方向标志。5. 实测中遇到的两个典型坑以及对应的根治方法5.1 坑一上电就发烫FAULT引脚低到了地第一次打样回来后我拿到测试台上电DRV8818 表面几秒钟就烫到不能碰同时FAULT引脚一直为低几乎所有保护都在动作。当时第一反应是芯片坏了或者焊接短路但换了一片还是同样问题。后来用示波器抓VM和STEP引脚发现上电瞬间VM电压爬升的时候STEP引脚上有持续的不规则脉冲EN引脚也一直处于允许状态。原因找到了MCU还没开始初始化STEP/DIR/EN引脚全是高阻态但外部没有加下拉DRV8818 内部逻辑把这些悬空引脚当成了有效信号于是以随机频率进入工作状态电机在堵转芯片自然狂发热。这个问题的根治方法有两个层面。硬件上EN引脚必须接一个和使能极性匹配的默认电平电阻确保MCU没接管之前它永远处于禁用状态STEP和DIR也可以各加一个小下拉电阻避免悬空带来的随机脉冲。软件上MCU初始化函数第一件事就是把所有电机控制引脚设为输出并写安全电平然后开启PWM不要再等整个系统跑完才拉这些信号。现在我的每块板子上电顺序都是逻辑电源稳定 - MCU先将EN锁死 - 延时100ms - 开启VM输出。这样再也没有出现过上电发烫的现象。5.2 坑二每次到同一个角度附近失步设备运行了几天遇到一个非常典型的故障每次走大约5000步对应某段机械位置时偶尔会出现一次丢步而且不是每次都丢极难复现。我先怀疑机械阻力但把负载拆掉之后还是丢后来采样电阻和电流也没问题。最后把示波器挂在STEP引脚上用长时间的波形分析看频率变化终于发现加速阶段在某个频率点附近PIC18F47K40 在PWM中断里要做的工作比其他时候多一点偶尔一次中断响应延迟超过了硬件PWM周期的10%导致一个脉冲周期被拉长了50%以上。这个异常停下不可能被电机响应并且在那个频率点正好处于机械系统共振区于是开始丢步。解决方法是多管齐下一是把PWM中断内所有非必要工作全部移走中断里不再处理位置计算只做步数递减和周期寄存器重载二是检查共享变量访问确保中断和主循环之间不会冲突三是在加减速曲线上让加速度减小一点同时在共振频率区段适当放慢频率爬升速度。改完以后连续跑了两天再没出现过那个位置的丢步。这个案例也提醒了我步进控制看似简单其实每个脉冲的时序稳定性都直接影响最终定位排查异常时波形证据永远比感觉靠谱。5.3 机器人应用上的额外注意点如果是把这一套用在机器人关节上还有几个地方要追加。首先是电机线和编码器线如果带传感器必须分开走并且用屏蔽线接好否则电机电流斩波产生的干扰会串到反馈信号里。其次是机器人运动过程可能存在频繁启停和正反转加减速曲线不要做得太激进尤其反向时如果不先停止机械背隙会导致冲击严重时会损坏减速机。再次是整体机械刚度步进系统的失步往往和机械共振耦合在一起因此在结构设计时尽量增加刚性或者在控制软件里加入一个陷波滤波器很多主流驱动器都自带但 DRV8818 本身没有这个功能需要我们在软件上通过调整速度曲线避开共振点。只要把这些细节处理好DRV8818 PIC18F47K40 在中小型机器人控制系统里完全能撑起一片天。最后分享一点个人经验这套组合我已经在三个项目中反复使用最大的感受是——器件的可靠性上限已经由芯片决定我们能做的是不拖后腿。把硬件层的电流设定、散热、隔离做扎实再把软件层的脉冲生成和加减速状态机做干净剩下的问题大多是机械结构和现场干扰。如果你正准备做类似的控制板强烈建议先按这个思路搭一个最小验证板用示波器把每个关键波形都过一遍再进入正式产品设计。设计文档里永远把官方的数据手册放在手边不同批次的芯片参数以手册为准别照抄网上任何人的参数。
返回列表