VxWorks 6.3 编程调试要点

VxWorks 6.3 编程调试要点
VxWorks 6.3 编程调试要点

VxWorks 6.3 编程调试要点

(仅供内部使用)

文档作者:周礼兵日期:2007-03-05

开发/测试经理:_______________ 日期:___/___/___

项目经理:_______________ 日期:___/___/___

版权所有不得复制

目录

目录 (2)

1系统特点 (3)

2编程调试 (3)

2 .1应用程序的运行 (3)

2 .1.1Shell 下运行 (3)

2 .1.2自启动运行 (4)

2 .1.3通过workbench运行 (4)

2 .2内核模块的运行 (4)

2 .3ROMFS (4)

2 .4应用程序的系统调用 (5)

2 .4.1系统调用的一些约束 (5)

2 .4.2静态的增加系统调用函数 (5)

2 .4.3动态的增加系统调用函数 (6)

2 .5共享数据区域 (7)

2 .6动态库 (7)

2 .6.1共享库(Shared Libraries) (7)

2 .6.2Plug-ins (7)

2 .7多任务 (8)

2 .7.1任务变量(Task Variables) (8)

2 .7.2VxWorks task (8)

2 .7.3POSIX Threads (8)

2 .7.4任务调度 (8)

2 .8信号量 (8)

2 .8.1VxWorks semaphores (8)

2 .8.2POSIX Semaphores (8)

2 .9消息队列 (8)

2 .9.1VxWorks Message Queues (8)

2 .9.2POSIX Message Queues (8)

2 .10Sockets (8)

2 .11Pipes (9)

2 .12VxWorks events (9)

2 .13POSIX Queued Signals (9)

2 .14内存管理 (9)

2 .15Shell 解析器 (9)

3设计要点 (10)

参考文档 (11)

VxWorks 6.3 编程调试要点

关键词: 内核态、用户态、消息、信号、信号量、管道、任务、线程

缩略语说明:RTP(real-time process)、POSIX(Portable Operating System UNIX)、MMU(Memory Management Unit)

1 系统特点

VxWorks 6.3除了兼容以前低版本(如:VxWorks 5.5)内核外,增加一些其它的功能。其中最明显的是引入了用户态的应用程序及POSIX的一些特性功能(如线程、线程调度、互斥锁、信号量、消息等),这样就有内核态和用户态之分。内核模块是运行在内核态的,应用程序是运行在用户态的。

这里所指的应用程序就是VxWorks RTPs(real-time processes),与Unix、Linux的应用程序有相似性,它在用户态下运行,当被加载到内存运行时,每个RTP都会被分配不同的虚拟的地址空间,包括代码段、数据段、及堆栈等。当启用MMU时,各应用程序之间及与内核之间是不能随意互相访问的(注:如果是simulate 内核的调试的话,MMU组件是不支持区分超级用户和普通用户的,应用程序可以访问内核的内存空间,这样子的话,内核的任务有可能被应用程序的任务破坏),如果需要进行数据传递,则可通过消息、管道、信号、共享内存、SOCKET等。应用程序还可通过系统调用来提升操作权限,如操作内核或配置硬件资源等。应用程序间可以动态的调用共享库的函数来执行,但要注意共享库的函数可重入性。

引用POSIX的一些特性功能主要为了方面从POSIX中移植程序及增强系统功能。

2 编程调试

本文的大部分调试过程是通过wind river workbench2.5开发环境进行的,该环境与以前的Tornado5.5虽然有一定的差别,但基本原理是相似的。具体应用可以参考文档《wr_workbench_vxworks_users_guide_2.5.pdf》。

2 .1应用程序的运行

2 .1.1Shell 下运行

使用C解析器:

如:rtpSp "host:c:/myInstallDir/vxworks-6.1/target/usr/root/PPC32diab/bin/myVxApp.vxe

first second third"对应的可以用kill( ) 或者rtpDelete( )来终止运行。

提示符:->一般为C解析器

可用shConfig "INTERPRETER=Cmd" 来切换到command解析器下

使用shell command解析器:

如:rtp exec host:c:/myInstallDir/vxworks-6.1/target/usr/root/PPC32diab/bin/myVxApp.vxe

first second third对应的可以用rtp delete、kill、rtpd shell命令来终止运行,如果运行在

前台的话,还可用CTRL+C来终止运行。(后台运行可在rtp exec命令后或应用程序

名后加&)。

如:rtp exec host:c:/myInstallDir/vxworks-6.1/target/usr/root/PPC32diab/bin/myVxApp.vxe

first second third &

提示符:[vxWorks]# 一般为C解析器

可用set config INTERPRETER=C 来切换到C解析器下

2 .1.2自启动运行

通过脚本运行,需在RTP Startup Facility定义

如:在NAME为RTP_APPL_CMD_SCRIPT_FILE的Value栏里加入"/romfs/VxScript"

(目的是为了执行romfs里的脚本VxScript)

VxScript脚本内容示意:

rtpSp "/romfs/RtpTest1.vxe"

rtpSp "/romfs/RtpTest2.vxe"

通过字符串解析运行,需在RTP Startup Facility定义

如:在NAME为RTP_APPL_INIT_STRING的Value栏里加入

"#/romfs/RtpTest1.vxe#/romfs/RtpTest2.vxe" (目的是为了执行romfs里的应用程序

RtpTest1.vxe及RTPTest2.vxe #号为多个应用程序的分隔符)

2 .1.3通过workbench运行

可以通过workbench连接到目标板上,然后选中已编译好的vxe文件点击右键选择Run RTP on Target就s可以运行了。

2 .2内核模块的运行

与VxWorks5.5类似。

2 .3ROMFS

VxWorks的一种只读文件系统,一般是用作把应用程序、脚本文件、共享库等打包在ROMFS里并连同内核一起编译成VxWorks Image文件。当内核运行时,通过devs命令看到设备描述符/romfs。可以通过read或fread来读取内容。

创建ROMFS可以通过workbench来创建,把ROMFS工程当作是内核Image工程的子工程。也可通过命令行手动配置,如:

1)cd c:\myInstallDir\vxworks-6.1\target\proj\wrSbc8260_diab

2)mkdir romfs

3)copy c:\allMyVxApps\myVxApp.vxe romfs

4)make TOOL=diab

如果不想在内核工程目录下创建romfs目录,可以在其它地方创建,但在make内核时,必须指明romfs的目录,如:

make TOOL=diab ROMFS_DIR="c:\allMyVxApps"

2 .4应用程序的系统调用

VxWorks6.3 的内核态和用户态有不同的指令集及MMU设置,应用程序是运行在用户态的。只要MMU打开的时候,它是不能直接调用系统函数或数据结构。为了解决这种情况,系统调用可以为应用程序提供一种优先级比较高的操作,如操作内核或配置硬件资源等。所有可用的系统调用函数(包括自定义的系统调用函数)都可以通过syscall.h来查询。

2 .4.1系统调用的一些约束

1)可自定义的组号为2到7,每一系统调用组最多可有64个函数

2)函数参数最多只支持8个32位的参数(32位体系结构的CPU),如果是64位的参数

则需要按两个32参数来计算,不支持浮点或中断向量类型的参数,如果多于8个参数

则需通过结构来定义参数。

3)函数返回值为32位(32位体系结构的CPU),如果是64位的话则需通过get64BitValue

来获取。

4)系统调用处理函数的命名必须和系统调用函数命名一致,然后追加Sc,例如系统调用

函数名为user0SysCallFunc0,则系统调用处理函数必须命名为user0SysCallFunc0Sc

5)系统调用处理函数的参数只能为一个指向某种结构类型的指针,必须把系统函数的所

有参数定义成结构,且结构命名为系统调用处理函数名+Args,如:

struct user0SysCallFunc0Sc

{

int a;

int b;

char *c;

……

}

6)建议在系统调用处理函数中使用scMemValidate函数来验证应用程序传递过来参数的

可访问性,如指针所指向的内容是否可访问。

2 .4.2静态的增加系统调用函数

1)增加系统调用组

在文件syscallUsrNum.def(在目录VxWorks6.3\share\h里,如果没有则需要在此目录新建一个)里增加,内容示意如下:

SYSCA LL_GROUP SCG_USER0 2 INCLUDE_USER_SYSCA LL

0 user0SysCallFunc0

1 user0SysCallFunc1

2 user0SysCallFunc2

解释:

第一行SYSCALL_GROUP指明是系统调用,SCG_USER0为组名(标红色的地方可以

自己命名),2 为组号(只有2-7可用),INCLUDE_USER_SYSCALL为组件定义,

如果没有定义则该组的所有函数都不会被包含。

第二到第四行为函数号及函数名称定义

2)增加系统调用函数定义

user0SysCallFunc0 3 [ int a; int b; char *c; ]

user0SysCallFunc1 3 [ int a; int b; char *c; ]

user0SysCallFunc2 3 [ int a; int b; char *c; ]

解释:

user0SysCallFunc0为函数名,3为参数个数,[ int a; int b; char *c; ] 为参数形式

3)增加系统调用处理函数

int user0SysCallFunc0Sc(struct user0SysCallFunc0ScArgs *pArgs)

{

……

return OK;

}

int user0SysCallFunc1Sc(struct user0SysCallFunc1ScArgs *pArgs)

{

……

return OK;

}

int user0SysCallFunc2Sc(struct user0SysCallFunc2ScArgs *pArgs)

{

……

return OK;

}

4)重编译内核代码和用户态代码

到目录:installDir/vxworks-6.x/target/src 及installDir/vxworks-6.x/target/usr/src执行:

make CPU=cpuType TOOL=toolType

5)在应用程序运行,示意如下

syscall (12345678, 78654321, (int)&c, 0, 0, 0, 0, 0,SCN_user0SysCallFunc0);

SCN_user0SysCallFunc0 为当重新编译时自动产生的宏定义,方便调用

2 .4.3动态的增加系统调用函数

1)编写系统调用函数的符号表

如:

_WRS_DATA_ALIGN_BYTES(16) SYSCA LL_RTN_TBL_ENTRY testScRtnTbl [] =

{

{(FUNCPTR) testFunc0, 1, "testFunc0", 0}, /* routine 0 */

{(FUNCPTR) testFunc1, 1, "testFunc1", 1}, /* routine 1 */

{(FUNCPTR) testFunc2, 1, "testFunc2", 2}, /* routine 2 */

{(FUNCPTR) testFunc3, 1, "testFunc2", 3} /* routine 3 */

};

_WRS_DATA_ALIGN_BYTES(16)告诉编译器以16字节对齐,目的是为了改善性能

2)编写系统调用函数

如:

int testFunc0(int a,int b,……)

{

…….

}

……

3)注册系统调用函数

如:syscallGroupRegister (2, "testGroup", 4, testScRtnTbl, 0);

第一个参数为组号,第二个参数为组名,第三个参数为函数个数,第四个参数为系统

调用符号表(如果是在shell下调用的话需加&号,如& testScRtnTbl),第五个参数为

是否要覆盖已存在的注册项。

4)在应用程序中运行

如:syscall (arg1, arg2, arg3, arg4, arg5, 0, 0, 0,SYSCALL_NUMBER(2,0));

SYSCA LL_NUMBER(2,0)的第一个参数为组号,第二个参数为函数号

2 .5共享数据区域

要点:

1)需定义INCLUDE_SHARED_DATA

2)需使用者额外使用互斥机制来保证数据正确性

3)共享区域可以包括RAM、FLASH、IO、VME

4)内核和应用程序之间都可以共享同一数据区域

5)通过sdCreate 来创建,sdOpen来访问

2 .6动态库

2 .6.1共享库(Shared Libraries)

在应用程序中用,当内核启动时,共享库全部的内容就被加载到特定的RAM中,可以供所有应用程序动态调用。应用程序在编译时只是链接一些必要的信息,代码是在运行时动态定位的。

2 .6.2Plug-ins

类似DLL工作原理,没有调试过。

2 .7多任务

2 .7.1任务变量(Task Variables)

当多个相同的任务需要用到同一全局变量名,而又需要互不干扰该变量的值时需要用到。

使用时需要先用taskVarAdd 来指明哪个变量在哪个任务中,修改变量的值时用函数taskVarSet

好像只能在内核态应用

2 .7.2VxWorks task

通过taskSpawn来创建新的任务

2 .7.3POSIX Threads

VxWorks 支持POSIX Threads。与VxWorks task相似,如需在应用程序支持,则必须配置内核任务调度为POSIX thread scheduler。通过pthread_create来创建新的任务。

2 .7.4任务调度

支持VxWorks traditional kernel scheduler、POSIX thread scheduler及user-specified kernel scheduler三种调度方式,详细可参考《VxWorks_kernel_programmers_guide_6.3.pdf》在同一应用程序中不建议既使用VxWorks API又使用POSIX API

2 .8信号量

2 .8.1VxWorks semaphores

与VxWorks5.5一样使用。

2 .8.2POSIX Semaphores

需配置INCLUDE_POSIX_SEM组件,不需要其它编译设置等。分为无名信号量与有名信号量,无名信号量只能在同一应用程序中使用,有名信号量可以在不同的应用程序中使用,但是命名时需在前面加“/”,如“/semID001”

通过sem_open来创建或打开,sem_wait来获取,sem_post来释放

2 .9消息队列

2 .9.1VxWorks Message Queues

使用比较简单,需注意设置最大的消息数量及消息长度。

使用msgQCreate创建msgQSend发送,msgQReceive接收,接收发送长度只要不超过

设定长度就可。

缺点:不能在不同的应用程序或与内核传递消息

2 .9.2POSIX Message Queues

使用时需要设置最大的消息数量及消息长度

使用mq_open创建mq_send发送,mq_receive接收,发送长度只要不超过设定长度就

可,接收长度必须与设置的消息长度相等,否则接收会返回出错。

可以在不同的应用程序或与内核传递消息

2 .10Sockets

类型有三种:Internet Domain Sockets、Routing Sockets、Local Domain Sockets。可用在

不同操作系统间的、系统内部的各模块的数据交互。

详细应用可参考文档《wr_net_stack_vxworks_6_programmers_guide_3.1.pdf》

2 .11Pipes

通过虚拟设备及I/O系统的操作来实现,任务、应用程序、内核程序都可以往管道里发送消息,也可从管道里接收消息,来实现相互通讯。

管道可以通过pipeDevCreate来建立,需确定消息数目及长度,当管道写满时,再写入时会处于pend状态直到有数据被读取。注:所写入及读取的数据长度不能大于初始化的消息长度。从管道写入数据及读取数据可以用fread、fwrite等

2 .12VxWorks events

可以被用作轻量级的二元信号量(因为不需要事先创建)在任务间或任务与中断处理之间的一些同步操作。它可以发送事件来通知任务信号量已经有效或消息已s经到达消息队列,可以分别用semEvStart和msgQEvStart来注册(注:同一个任务每次只能用semEvStart 或msgQEvStart注册,不能同时使用),当消息到达时又没有其它的任务挂在这个消息队列时会发送事件,当信号量空闲可用时也会发送事件。像中断或其它任务也可使用eventSend 来发送事件,所有的事件都用eventReceive来接收。事件共有32位编码,BIT25-BIT32系统保留使用,各个位本身不代表任何意义,需要使用者自己定义。

2 .13POSIX Queued Signals

可以通过在内核、应用程序、任务间相互传递信号,并可以带参数。使用与中断处理函数类似,需要注册一个信号处理函数及定义信号Number(共支持63个),该函数的运行或被终止可以通过发送信号来实现。

详细应用见《VxWorks Application Programmer’s Guide 6.3.pdf》(P225)

2 .14内存管理

VxWorks提供flat式的虚拟内存管理方式,即所有的程序都有不同的虚拟地址空间,不会存在相互重叠的现在,通过多段物理内存地址映射成连续地虚拟内存。

可以配置MMU启用或关闭,如果MMU被关闭的话,则所有的内存空间是不受保护的,即应用程序、内核程序都可以相互访问。有的硬件架构是不支持关闭MMU的,还有如果关闭MMU的话会导致性能的降低。

内存管理组件还提供应用程序、内核程序内存方面出错检测,如内存泄露、内存重复释放等。

2 .15Shell 解析器

目前支持C、command、自定义三种解析器。

当在C解析器下:可用shConfig "INTERPRETER=Cmd" 来切换到command解析器下。

当在command解析器下:可用set config INTERPRETER=C 来切换到C解析器下。

其中自定义解析器可以参考系统自带的shellInterpDemo.c例子。编译完成后可进行如

下操作即可进入自定义解析器:

1)-> ld < shellInterpDemo.o

2)-> shellInterpRegister (shellInterpDemoInit)

3)-> shConfig "INTERPRETER=DEMO"

该例子的解析器可以支持如下命令:

■task to create a task

■list to list the tasks

■kill to destroy a task

■dump to dump the memory contents

■sym to access symbol

■C to switch back to the C interpreter

3 设计要点

与VxWorks5.5相比,VxWorks6.3增加了许多新的特性功能,如区分内核态、用户态;

兼容POSIX的许多特性功能,如线程、消息、信号量、任务调度;可以自定义任务调度策略、Shell解析器等。

这样给开发者带来很大的灵活性,移植POSIX程序的话会变得更加容易。RTPs应用程序的引入可以使系统运行的更加安全,同时维护起来会比较方便,但这是损耗系统效率为代价的。

软件设计越灵活,开发者的设计难度就越高。在设计时需要综合多方面的因素,如:稳定性、效率、容错能力、可移植性、软件自身复杂度等等。

如果软件是从VxWorks5.5直接移植到VxWorks6.3的,软件整体构架可以不做太多的改动,因为VxWorks6.3是兼容底版本的,最主要的是可以节省移植时间。当然也可做一些适当的调整,如果运行在内核态的程序与内核没什么关系的话,那么可以考虑让其工作在用户态。

如果是在VxWorks6.3平台上新开发一些模块,就需要考虑哪些模块适合运行在内核态,哪些模块适合运行在用户态。内核态模块的设计与以前版本基本上是一致的,用户态模块的设计和UNIX相似,每个应用程序都必须有main函数,也就是入口函数。

个人理解:一般与底层硬件操作密切的模块、需直接与系统内核交互的模块、驱动模块比较适合设计成内核态模块,其它的都可以考虑设计成用户态模块,这样做对系统的整体性能可能会有一定的影响,但是提高了安全性,更有层次感,也方便在不同的操作系统平台中移植。用户态模块的公共模块可以设计成共享库模式,这样可以节省系统资源。

参考文档

【1】wr_workbench_vxworks_users_guide_2.5.pdf 【2】wr_vx_simulator_users_guide_6.1.pdf

【3】vxworks_application_programmers_guide_6.3.pdf 【4】vxworks_kernel_programmers_guide_6.3.pdf 【5】vxworks_migration_guide_6.3.pdf

【6】wr_workbench_vxworks_migration_guide_2.5.pdf

SSB变桨系统试验常见故障

1.SSB变桨系统地面出厂试验时,在调整95°限位开关及挡块位置时操作人员不慎将60947-5-1#95°限位开关直动头冲断。 2.G8-064315变桨控制柜,实验时变桨速度过快,执行速度远大于设定速度。初步判 断电机驱动器损坏,造成无法正常使用。 3. 473399-60#旋编编码器做变桨功能试验时,编码器存在角度无变化故障 4、466631-04#旋编编码器做变桨功能试验时,编码器存在角度跳变故障 5. 叶轮功能试验时,由于操作人不慎误将G8-070588变桨控制柜内的1F1防雷模块的火线与零线接反,导致1F1防雷模块烧坏。 6.变桨控制柜实验时系统报电机过温PTC故障,经更换柜内9A1模块后此故障消除。 7、变桨控制柜实验时系统报电机过温PTC故障,经更换柜内9A1模块后此故障消除。 8、G8-070093#变桨控制柜实验时柜内12A1模块指示灯不亮,经更换此故障消除。 9. 旋编编码器做变桨功能试验时,编码器角度始终保持在0°无变化,无法正常使用。 10、旋编编码器旋转时有卡阻现象,并且内部有异响。无法正常使用 11. 95°限位开关压下直动头不能正常复位,造成该95°限位开关无法正常使用。 12. 变桨系统中有2个限位开关触头有卡阻现象,活动不自如,无法正常使用。 13. 叶轮组在调试时发现,闭合电容开关时,9U1不动作,面板上显示9U1故障,无法正常使用 14. LED显示H.N,面板显示:变流器故障,散热片温度故障,无法正常使用。 15. 变桨柜G8-065677打开电容开关后面板显示电容电压9U1为故障状态,9U1不动作,无法正常使用。 16. SSB控制柜配套带来的旋转编码器形状不同, 一套三个旋编信号线接头位置不同,装后性能不受影响。

Lust变桨系统调试相关事项说明_更新

Lust变桨系统调试说明 1、操作说明: 为确保系统调试安全,必须预先进行以下措施: ①现场调试人员必须佩戴好安全帽; ②400V电源的三相线、零线和地线必须可靠连接,避免缺相或漏接; ③上电前确认主控箱和轴控箱的开关处于断开状态; ④所有连接电缆连接正确(电机后面的编码器电缆号是S1、S2和S3;冗 余编码器的电缆号是T1、T2和T3,若反接,会出现飞车故障); ⑤上电前将电机的轴键拆除或利用扎带将其捆扎牢固; ⑥上电前确认电机与底座是否可靠固定; ⑦电池箱箱盖闭合(完成检查); 2、系统紧急顺桨: ①Profibus通信故障(或者不正常); ②Pitch Master故障; ③电机侧编码器故障; ④安全链信号输入无+24V(硬输入点); ⑤未提供+24COM(硬输入点); ⑥Emergency mode位为1; 3、手动模式 手动模式用于机械调零和现场安装调整用,转动速度为2.5度/秒。 手动模式前提条件: ①手动模式信号为1(硬输入点),并观察主控箱的9A1的第8通道的灯是 否点亮; ②Profibus通信正常,或者短接17K7的13、14引脚; ③Normal Operation Mode设置为0; ④Emergency Mode位为0; ⑤转动任一个桨叶时,另外两个桨叶为91度位置(或者通过关闭轴箱的电 源模拟); ⑥轴箱电池开关处于断开状态; ⑦手动旋钮的通道选择的0、1、2和3分别对应空档、轴控箱1、轴控箱2 和轴控箱3;转动方向旋钮控制的是电机的正传和反转; 4、自动模式

自动模式必须满足以下条件: ①先闭合主控箱的400V电源; ②Profibus通信正常; ③将Fault Reset置位1,然后置0; ④闭合轴箱的电池开关和电源开关前确保通信的Emerge Mode(读)为0 和Normal Operation Mode(写)为0;硬接点的Safety Signal(为高电平)、+24V和0V有正常连接,Manual Operation为0。否则会出现飞车现象; ⑤轴控箱上电顺序:先闭合电池开关(5Q1),然后闭合电源开关(6S1)。 正常状态下电机会由于内部的电路的控制不会出现转动; ⑥自动控制是通过通信软件控制,先设置好控制桨叶的目标角度、转速(建 议为3度/秒以下)和加速度(建议0.5~2度/秒2),然后将Normal Operation Mode置1,启动自动模式;若要中途停止,只能通过以下任一方式:将Normal Operation Mode置0、将对应的91度限位开关触发和关闭轴控箱电源(6S1); 5、限位开关 91度限位开关用于控制Pitch Master(主控变频器)的输出控制,当触发了该限位开关后,7K6复位,然后电机会停止,相对而言动作比较缓慢; 96度限位开关用于控制电机和Ptich Master的ENPO信号,当触发了该限位开关后,6K2和6K3复位,然后电机立即停止,相对而言动作比较迅速。 6、Bypass Bypass信号是用于旁通2个限位开关触发了以后继续启动电机转动,有硬信号和软信号之分。 Bypass软信号是对应91度限位开关。当91度触发了以后,利用通信将对应桨叶的Bypass信号置1,然后电机才可以往96度方向转动;而需要往0度方向转动不需要将对应桨叶的Bypass信号置1(实际上该Bypass信号用途不大); Bypass硬信号是对应96度限位开关,当96度触发了以后,利用硬结点的Bypass信号置1,然后电机只可以往0度方向转动; 7、温度预处理说明 根据通信中的所有温度值,需要在控制当中进行预处理,其温度的预处理值建议如下(根据Lust技术人员的建议): ①Pitch Master停机温度值为80度;

变桨系统带载测试平台要求

变桨系统带载测试平台试验大纲 1 前言 本部分规定了各种型号的电动变桨驱动系统工作性能的测试要求和测试方法。适用于各种电动 变桨驱动系统出厂性能验收和新产品性能测试。 2 测试内容 电机负载测试内容主要分成三个部分: 1)变桨系统带载功能性测试 2)变桨系统带载故障模拟测试 3)变桨系统带载连续运行测试 测试的主要部件为:变桨电机、刹车系统、伺服驱动器、蓄电池、编码器。 3 测试依据 2MW 风机根据《变桨驱动系统采购规范》SB-030.02.05-A 3.6MW 风机根据《变桨驱动系统采购规范》V-69.2-BV.MR.00.00-A-D GB/T 1311-2008《直流电机试验方法》 GB/T 1029-2005《三相同步电机试验方法》 4 变桨系统带载功能测试 4.1 变桨电机额定负载测试 需测试电机在额定负载下的变桨位置、电机转速、转矩响应特性。位置给定范围为(0°~30°), 测试变桨速度为2°/S。 测试需要得到如下响应曲线图:电机运动位置给定曲线、电机位置响应曲线、电机速度响应曲 线、电机转矩响应曲线、电机电流变化曲线、电机温升曲线。 Y520000064-2 变桨系统带载测试平台试验大纲共3 页第 2 页 FDJL-JS-027 4.2 变桨电机变化负载测试 需测试电机在变化负载下的变桨位置、电机转速、转矩响应特性。位置给定范围为(0°~30°), 变化负载范围为额定负载的±50%,测试变桨速度为2°/S。 测试需要得到如下响应曲线图:电机运动位置给定曲线、电机位置响应曲线、电机速度响应曲 线、电机转矩响应曲线、电机电流变化曲线、电机温升曲线。 4.3 变桨电机最大负载测试 需测试电机在最大负载下(3s 内)的变桨位置、电机转速、转矩响应特性。位置给定范围为(0°~ 30°),测试变桨速度为2°/S。 测试需要得到如下响应曲线图:电机运动位置给定曲线、电机位置响应曲线、电机速度响应曲

国电 变桨 调试

PROJECT GUP CCV风场变桨调试TO GUP Customer ENGINEER MOOG Service Remark GUP CCV风场变桨调试 1、变桨柜内无电检查 1.1 查验系统元器件包括电缆有无缺陷。 a、检查柜体在运输过程中是否存在由于震动造成的一些元器件损伤,主要是看元器件有无硬件损伤。 b、检查所要连接的重载电缆有无绝缘破损情况,Harting有无损坏。 c、查看柜内有无铁屑、铜丝等金属危险品 确保上电后设备及人身的安全。 1.2 校线检查 1.2.1 24V控制滑环线缆检查 使用万用表对从滑环进轮毂的线缆进行校线检查,确保接线没有错误。 注意:防雷模块的区别 6R1:接Profibus通讯线为5V防雷模块 16R1、17R1为24V防雷模块 注:此项接线必须校线检查,不然24V如果接线短路,就会造成防雷模块的损坏。 1.2.2 400V线缆检查 使用万用表对从机舱进轮毂的线缆进行校线检查。 注:400V的线缆校线检查必须提高警惕,严禁出现零线与火线或者地线与火线接反的情况!!! 目前在已经调试的风场中 1)尚义风场发现400V的防雷模块损坏较多,查出原因为机舱出火线与地/零线接反导致防雷模块的损坏2)在武川风场出现有,机舱零线未接紧,上电之后,系统缺零导致烧坏AC400充电器以及24V开关电源。 1.2.3 测量Canbus终端电阻60±5? 可测量BVL E线harting上,白棕两线间阻值 1.2.4 激活profibus终端电阻 DP插头上拨动开关处于ON状态 1)未接主控通讯线时,可测得6R1:1-2间阻值为220±10? 2)若连接主控通讯线之后阻值在110±5? 注:此阻值测量是在主控与变桨均未上电情况下测量的 1.2.5 线路测量 连接外部电源线之后(外部给变桨供电400V电源开关必须保持断开),闭合变桨柜体内所有开关(电池柜5Q1,axis1,axis2,axis3开关保持断开),做上电之前的线路测量 1)检测L1、L2、L3、N、PE线间的短路测量。 2)24+与L1、L2、L3、N、PE线间的短路测量。 3)24-与L1、L2、L3、N、PE线间的短路测量。 4)测量柜内各个端子排N线与N线以及PE线间的导通性。 注意:各个电压等级之间不能有回路电压串入 5)检测PITCHmaster进线进出线的对地的短路测量 确保上电之前线路无短路情况,保护设备及人身安全 1.2.6 电池电压测量 查看连接电池的短接线,保证电池短接线完全连接好,不能有虚接现象。 依次测量每个电池柜的电压,查看电池柜电压是否平衡,一般在230V左右,若出现电池柜电压偏低情况,上电后优先闭合这个电池柜开关,优先充电。

REE-OAT变桨系统现场调试手册

版本:V1.0 REE-OAT变桨系统现场调试手册 发布日期:2009年9月9日

REE-OAT变桨系统现场调试手册 本文件用于指导1.5MW(低温型)风机用变桨系统的现场调试,变桨系统的调试要严格按照调试步骤进行,做好调试记录。 一、调试工具 ●调试软件Windbench; ●笔记本电脑一台; ●万用表一个; ●工具箱一个:配有一字型、十字型螺丝刀、一套内六角扳手和尖嘴钳等 工具; ●REE-OAT变桨系统原理图一份; 二、上电前的常规检查 ●确认变桨系统各部件间的电缆连接正确,且各航空插头连接牢靠; ●检查各控制箱内及箱外的元器件是否完好无损; ●确认各控制箱和电池箱的电源开关均处于断开状态,箱内的电路保护开 关均处于断开状态; ●电池电压在满电状态应为246V,如低于241V,电池已处于充电状态, 此时充电激活以及充电电流项的指示灯应为绿色,电池电流值为负值。

充电器激活 注意:系统上电前一定要确保三相400V电压正常和相序正确,N线和PE接地线连接正确且固定牢靠,电源不能缺项,否则容易造成模块烧毁。 三、单独调试步骤 1.首先一定要先合上三个电池箱的开关1Q2,2Q2,3Q2; 2.PC调试步骤(按照以下示意图分步完成): ●检查Q1(400V AC)进线端电压是否正常,出线端是否对地短路,正常 则合上Q1; ●检查S1(230V AC)进线端电压是否正常,出线端是否对地短路,正常 则合上S1,检查照明灯是否正常; ●检查Q11,Q21,Q31(400V AC)进线端是否正常,出线端是否对地短 路,正常则合上Q11,Q21,Q31; ●检查F11,F21,F31(230V AC)进线端是否正常,出线端是否对地短路, 正常则合上F11,F21,F31;

风机调试

风力发电机组调试 一.概述 风力发电机组调试的任务是将机组的各系统有机的结合在一起,协调一致。保证机组安全、长期、稳定、高效率地运行。调试分为厂内调试和现场调试两部分。 调试必须遵守各系统的安全要求,特别是关于高压电气的安全要求及整机的安全要求,必须遵守风机运行手册中关于安全的所有要求,否则会有人身安全危险及风机的安全危险。调试者必须对风机各系统的功能有相当的了解,知道在危险的情况下必须采取的安全措施。总之调试必须由通过培训合格的人员进行,尤其是现场调试,因为各个系统已经完全连接,叶片在风力作用下旋转运动,必须仔细完全按照调试规程的要求逐步进行。 二.厂内调试 厂内调试是尽可能的模拟现场的情况,将系统内的所有问题在厂内调试中发现、处理,并将各系统的工作状态按照设计要求协调一致。由于厂内条件的限制,厂内调试分为两个部分:轮毂系统调试和机舱部分调试。 2.1轮毂调试 轮毂是指整个轮毂加上变桨系统、变桨轴承、中心润滑系统组成一个独立的系统。在调试时用模拟器模拟机组主控系统。调试的目的是检查轴承、中心润滑系统、变桨齿轮箱、变桨电机、变桨控制系统、各传感器的功能是否正常。

2.1.1调试准备 调试前必须确认系统已经按照要求装配完整,系统在地面固定牢固,系统干燥清洁,变桨齿轮箱与轴承的配合符合要求。 连接调试试验柜与轮毂系统,进行通电前的电气检查,确认系统接地及各部分的绝缘达到要求,检查进线端子处的电压值、相序正确,只有符合要求后才能向系统送电。 送电采用逐级送电,按照电路图逐个合闸各个手动开关,并检查系统的状态正常。 2.1.2轮毂调试 用计算机连接轮毂控制系统,按照调试文件进行必要的参数修改。 按照调试规程逐项进行调试作业,并作完整的记录。 主要工作有: 用手动及程序控制逐个活动三个变桨轴承,检查各部分是否活动灵活,有无卡涩,齿轮箱、发电机、轴承是否润滑良好,有无漏油现象。 检查变桨控制系统的状态是否正常,充电回路、过电流保护、转速测定等是否正常,并测试蓄电池充电回路的功能。 逐个活动三个变桨轴,检查各轴的角度传感器,92度及95度限位开关,各电机的电流,温度传感器等的工作是否正常,并进行角度校准。 用主控系统模拟器模拟各状态信号、指令信号等,检查变桨控

REE-OAT变桨系统现场调试手册

REE-OAT变桨系统现场调试手册 版本:V1.0 REE-OAT变桨系统现场调试手册 发布日期:2009年9月9日 版本:1.0 MY1.5Se 日期:2009-9 REE-OAT变桨系统现场调试手册 资料提供部门: 级别: 客户中心工程调试部 编写校核审批状态 REE-OAT变桨系统现场调试手册 本文件用于指导1.5MW(低温型)风机用变桨系统的现场调试,变桨系统的调试要严格按照调试步骤进行,做好调试记录。 一、调试工具 , 调试软件Windbench; , 笔记本电脑一台; , 万用表一个; , 工具箱一个:配有一字型、十字型螺丝刀、一套内六角扳手和尖嘴钳等 工具; , REE-OAT变桨系统原理图一份; 二、上电前的常规检查 , 确认变桨系统各部件间的电缆连接正确,且各航空插头连接牢靠;

, 检查各控制箱内及箱外的元器件是否完好无损; , 确认各控制箱和电池箱的电源开关均处于断开状态,箱内的电路保护开 关均处于断开状态; , 电池电压在满电状态应为246V,如低于241V,电池已处于充电状态, 此时充电激活以及充电电流项的指示灯应为绿色,电池电流值为负值。 - 1 - 广东明阳风电技术有限公司 广东省中山市火炬开发区建业路 528437 版本:1.0 MY1.5Se 日期:2009-9 REE-OAT变桨系统现场调试手册 资料提供部门: 级别: 客户中心工程调试部 编写校核审批状态 充电器激活 注意:系统上电前一定要确保三相400V电压正常和相序正确,N线和PE接地线连接正确且固定牢靠,电源不能缺项,否则容易造成模块烧毁。 三、单独调试步骤 1. 首先一定要先合上三个电池箱的开关1Q2,2Q2,3Q2;

SSB变桨系统调试方案设计

变桨系统试验方案设计 编制: 校对: 审核:

目录 一、变桨系统内部试验 (1) 1.1正常变桨试验 (1) 1.2紧急停机试验 (2) 1.3变桨速度和方向的试验 (3) 1.3.1信号点检测 (3) 1.3.2故障信号灯 (4) 二、变桨系统与主控联调 (4) 2.1启动状态 (4) 2.2自我测试 (5) 2.3正常操作状态 (6) 2.4正常停机状态 (7) 2.5紧急停机状态 (8) 三、变桨系统通信协议 (8) 3.1通信数据格式 (8) 3.2功能列表 (9) 3.2.1读取当前数据(01h) (9) 3.2.2发送操作数据(02h) (10) 3.2.3读取参数(30h) (11) 3.2.4发送参数(31h、32h) (11) 3.2.5读取故障(50h) (12) 3.2.6发送设定位置值(96h) (12)

变桨系统试验方案设计 变速恒频风力发电机组风轮转速随着风速的变化而变化,可以更有效地利用风能,并且通过变速恒频技术可得到恒定频率的电能。风力机组因为在额定风速以上工况,风力机有可能受到很大的静态或动态冲击。变桨距机构的主要功能就是在额定风速附近(以上),依据风速的变化随时调节桨叶的节距角,控制吸收的机械能,一方面保证获取最大的能量同时减少风力对风力机的冲击。在并网过程中,变桨距控制还可实现快速无冲击并网,最终提高了整个风力发电系统的发电效率和电能质量。 本系统采用SSB公司生产的电动式变桨系统,此系统的调试主要分成两个部分进行,第一部分主要测试变桨系统本身运行的正确性,第二部分通过主控与变桨系统进行系统联调。 一、变桨系统内部试验 针对变桨系统的调试采用的是调试软件和硬件调试相结合的方式,从而保证变桨系统本身运行正常。 1.1正常变桨试验 正常变桨的试验是通过调试软件调节变桨速度和节距角来观察电机的运转情况。下面分别介绍调试软件以及调试步骤。 调试界面主要分成七个部分,下面对其每个部分作简要介绍: 1)、界面第一行左侧的模块中,A1…B3显示的是实际的变桨节距角,A-B 的功能是使能A或B的编码器。右侧是Cal是校对变桨角度,其左右两侧有快捷键高速和低速分别变桨至零度和90度; 2)、界面第一行右侧是显示Profibus是否正常的状态信号; 3)、界面第二行左侧显示的是数字输入E2、E3、E4,每个9个IO,从低位到高位分别对应的信号是:地、变换器准备就绪、电机保护、温控、蓄电箱充电完成、限位开关信号(91和95)、充电模块过压信号;

变桨系统原理及维护

1.5MW风力发电机组 变桨系统原理及维护 国电联合动力技术有限公司 培训中心 (内部资料严禁外泄)

UP77/82 风电机组变桨控制及维护 目录 1、变桨系统控制原理 2、变桨系统简介 3、变桨系统故障及处理 4、LUST与SSB变桨系统的异同 5、变桨系统维护 定桨失速风机与变桨变速风机之比较 定桨失速型风电机组 发电量随着风速的提高而增长,在额定风速下达到满发,但风速若再增加,机组出力反而下降很快,叶片呈现失速特性。 优点:机械结构简单,易于制造; 控制原理简单,运行可靠性高。 缺点:额定风速高,风轮转换效率低; 电能质量差,对电网影响大; 叶片复杂,重量大,不适合制造大风机

变桨变速型风电机组 风机的每个叶片可跟随风速变化独立同步的变化桨距角,控制机组在任何转速下始终工作在最佳状态,额定风速得以有效降低,提高了低风速下机组的发电能力;当风速继续提高时,功率曲线能够维持恒定,有效地提高了风轮的转换效率。 优点:发电效率高,超出定桨机组10%以上; 电能质量提高,电网兼容性好; 高风速时停机并顺桨,降低载荷,保护机组安全; 叶片相对简单,重量轻,利于制造大型兆瓦级风机 缺点:变桨机械、电气和控制系统复杂,运行维护难度大。 变桨距双馈变速恒频风力发电机组成为当前国内兆瓦级风力发电机组的主流。

变桨系统组成部分简介 变桨控制系统简介 ?主控制柜 ?轴柜 ?蓄电池柜 ?驱动电机 ?减速齿轮箱 ?变桨轴承 ?限位开关 ?编码器 ?变桨主控柜

?变桨轴柜?蓄电池柜

?电机编码器 GM 400绝对值编码器共10根线,引入变桨控制柜,需按线号及颜色接入变桨控制柜端子排上。 ?限位开关

变桨系统用户手册

天津 津瑞能电气 气有限公司 司
REne Electric Tianjin Lt ergy td.
?
REE MW 变桨 制系 E1.5M 桨控 系统 户手 用户手册
?
制作日期:?200 09.7.27 制作版本:?XXX X‐XXX‐XX 制作人:?XXX 变桨 桨项目部
?
http://ww https://www.360docs.net/doc/6f330770.html, 1?

天津 津瑞能电气 气有限公司 司
REne Electric Tianjin Lt ergy td.
目录?
1 2 3 变桨 桨控制系统( (PCS)特点 ....................... . ........................................ ...................................................?5 变桨 桨控制系统( (PCS)系统描述 ............... . ........................................ ...................................................?6 变桨 桨控制系统( (PCS)部件及部件功能 ... . ........................................ ...................................................?7 3.1 3.2 中控箱?..... ........................................ ........................................ ...................................................?7 轴箱?......... ........................................ ........................................ ...................................................?8 变桨管 管理系统 PM MM?.............. ........................................ ...................................................?9?
3.2.1?
3.2.1.1 PM 3 MM?接口介绍 绍:?................. ........................................ .................................................?10 3.2.1.2 元件 3 件展示?............................ ........................................ .................................................?13 3.2.1.3 总线 A DIP 拨码 3 线 码开关?........ ........................................ .................................................?14 3.2.1.4 3 模态开关?........................ 模 ........................................ .................................................?15?
3.2.1.5 设备 3 备维护功能?.................... ........................................ .................................................?15 3.2.2 变桨控 控制器 PMC C?................... ........................................ .................................................?16?
3.2.2.1 PM 接口介绍:?.................. 3 MC ........................................ .................................................?17 3.2.2.2 元件 3 件展示?............................ ........................................ .................................................?19 3.2.2.3 总线 B DIP 开关 3 线 关................. ........................................ .................................................?19 3.2.3 3.3 3.4 应急后 后备电源 PB BS?................. ........................................ .................................................?21?
电机?......... ........................................ ........................................ .................................................?23 附件?......... ........................................ ........................................ .................................................?24 限位开 开关?................................ ........................................ .................................................?24 编码器 器+连轴器+小 小齿轮?........ ........................................ .................................................?25 挂环;?垫片和固定 定螺母?.......... ........................................ .................................................?26 线缆?. ........................................ ........................................ .................................................?26?
3.4.1 3.4.2 3.4.3 3.4.4?
3.4.4.1 风扇 3 扇动力线缆?.................... ........................................ .................................................?26 3.4.4.2 限位 3 位开关线缆?.................... ........................................ .................................................?27 3.4.4.3 电机 3 机编码器动力 力线缆?........ ........................................ .................................................?27 3.4.4.4 叶片 3 片编码器线缆 缆?................ ........................................ .................................................?28 3.4.4.5 电机 3 机动力线缆?.................... ........................................ .................................................?28 3.4.5 连接器 器?.................................... ........................................ .................................................?29?
?
http://ww https://www.360docs.net/doc/6f330770.html, 2?

相关主题
相关文档
最新文档