嵌入式系统在温度控制中的应用.docx

上传人:b****3 文档编号:24922667 上传时间:2023-06-02 格式:DOCX 页数:26 大小:432.01KB
下载 相关 举报
嵌入式系统在温度控制中的应用.docx_第1页
第1页 / 共26页
嵌入式系统在温度控制中的应用.docx_第2页
第2页 / 共26页
嵌入式系统在温度控制中的应用.docx_第3页
第3页 / 共26页
嵌入式系统在温度控制中的应用.docx_第4页
第4页 / 共26页
嵌入式系统在温度控制中的应用.docx_第5页
第5页 / 共26页
点击查看更多>>
下载资源
资源描述

嵌入式系统在温度控制中的应用.docx

《嵌入式系统在温度控制中的应用.docx》由会员分享,可在线阅读,更多相关《嵌入式系统在温度控制中的应用.docx(26页珍藏版)》请在冰豆网上搜索。

嵌入式系统在温度控制中的应用.docx

嵌入式系统在温度控制中的应用

湖南文理学院

芙蓉学院

课程设计报告

 

课程名称:

嵌入式课程设计

专业班级:

通信1101班

学生姓名:

指导教师:

完成时间:

2014年6月5日

报告成绩:

评阅意见:

 

评阅教师日期

 

第1章概述

嵌入式系统被定义为:

以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。

实际上嵌入式系统是计算机的一种应用形式,是将先进的计算机技术、半导体技术和电子技术与各个行业的具体应用相结合后的产物,具有软件代码小、高度自动化、响应速度快等特点。

因此它是一个技术密集、资金密集、高度分散、不断创新的知识集成系统。

特别适合于要求实时的和多任务的系统。

复杂的微机控制系统使用常规的顺序程序设计方法加上中断来实现功能是比较困难的,主要体现在以下几个方面:

(1).实时性差:

由于计算机在处理中断时,一般不允许响应低级和同级中断,为了提高实时性,要求中断处理程序尽量短。

但是有许多实时操作的处理比较复杂,需要较长的CPU执行时间。

如果用中断来完成这些处理,则在处理时,无法响应低级或同级中断。

如果采用中断置标志的方法,让主程序来进行处理,则一方面会增加程序的复杂性,另一方面也难以做到实时处理,因为主程序不可能在执行其它程序时,随时去检查这些标志位而转向不同的处理程序。

(2).难以实现并行操作的相互通信:

在功能较强的实时系统中,除了主程序有时需要与中断间进行信息交换外,各个并行操作之间有时也需相互通信。

这些用常规方法是难以实现的。

(3).结构复杂、移植性差、维护困难:

单片微机功能的复杂化,使软件越来越复杂,特别是为了实现并行操作,需使用大量的中断和标志,使程序结构十分混乱,难以设计和调试。

同时由于程序采用线性结构,使得程序难于修改或者移植,因此缺乏灵活性、通用性和可维护性。

第二章系统的设计与实现

设计出一个实现对温度进行测量和控制的嵌入式系统。

系统具有对外界两点温度进行采集的能力,采集的模拟信号经A/D模块转换成相应的数字量,送入微处理器进行处理。

采集到的每一路温度都要与系统此路温度设定值进行比较,然后根据结果调用合适的控制算法,并通过控制相应的继电器的占空比实现对温度的控制、测量、运算处理、输出控制、显示、通信。

为此引出串行通信设计

利用RS-232串行通信,实现了与PC机进行通讯功能和远程加载功能。

考虑到实际的应用及成本等因素,选用的主要硬件器件有台湾SynCMOS公司的生产的SM5964微控制器,数据采集部分选用了凌特公司(LinearTechnology)推出的20位无延迟模数转换器LTC2430,串行通讯部分使用MAX232芯片,液晶显示屏选用了北京精电蓬远显示技术公司生产的MGLS-12864。

嵌入式操作系统选用了源代码公开的μC/OS-II。

选用的开发环境是:

Windows2000Server

开发工具:

KeilC517.0、VC++6.0

使用的语言是:

汇编、C语言

2.1系统的硬件设计

系统的原理图如图2-1所示。

主要有键盘输入、数据采集、输出控制、LCD显示、通信及电源模块等组成。

图2-1系统原理框图

下面介绍一下主要部分的电路图设计。

1).键盘输入电路

键盘是一组按键的组合,它是常用的输入设备,可以通过键盘输入数据或者命令,实现简单的人机对话。

键盘可分为独立联接式和行列式(矩阵式)两类,每类按其译码方式又分为编码式及非编码式两类。

设计中使用的是独立联接非编码式键盘。

电路图如图2-2所示:

图2-2键盘原理图

每个按键使用的是一个瞬时接触开关,这种联接方式可以容易被微处理器检测,但由于按键会产生机械抖动,在按键被按下或者抬起的瞬间,一般持续5~15ms,因此设计中要去除键抖动。

可以通过硬件双稳态电路或者软件延时来实现,设计中采用延时20ms实现的。

对于串键,采用无限处理方法。

同时为了防止按一次键而产生多次处理的情况(键扫描和键处理速度较快而此时键还没释放),在有键按下时,作一次键处理后还要检测按下的键是否释放。

2).数据采集电路

本系统实现对两路温度信号的采集,为了节省硬件成本,在前向通道中采用了多路选择开关,使用了两个多路模拟开关器件CD4052,实现信号的差分输入,完成对两路温度信号的轮流采样,然后将信号送入一个公共的模数转换器LTC2430,完成模数转换。

由微处理器的P1.2、P1.3两引脚实现信道的选择。

电路图如图2-3所示:

图2-3数据采集原理图

对温度的测量使用铂(Pt)热敏电阻(100Ω),使用桥式电路进行测量。

铂电阻是一种高性能的贵金属热电阻,具有精度高、稳定性好、性能可靠等优点,铂电阻的温度测量范围在-200℃到+850℃之间,在小于200℃时,非线性误差小于0.3%,它的电阻值R和温度t之间的关系可以近似地表示为:

A,B为常数,A为热敏系数(ΔR/℃)。

测量时采用的是查表法来计算温度值。

对于模数转换器LTC2430,设计中使其工作在外部时钟驱动模式下,工作状态分为转换(Conversion)、休眠(Sleep)和数据输出(DataOutput)三个状态。

此时它的数据输出波形图如图2-4所示:

图2-4LTC2430数据输出波形图

3).通信电路

本系统所进行的通信是实现与PC机的通信,选择了RS232通信标准。

这是因为RS232标准是使用最为广泛的通信标准,几乎每一台PC机上都有两个符合RS232标准的串行口,所以采用RS232标准有利于通用性。

由于PC机使用的是RS232电平,而SM5964输出是TTL电平,因此选用MAX232解决电平匹配的问题。

电路图如图2-5所示:

图2-5通信电路原理图

SM5964的串行发送端口TXD和接收端口RXD经MAX232芯片进行电平转换后,分别与PC机的数据接收端口RXD和数据发送端口TXD相连接。

SM5964串行通信的发送端TXD连接到的11引脚,发出的数据信号经过MAX232芯片转换后,由0~5V的TTL电平变为-12~+12V的RS232电平,从14引脚输出到PC机串行口的第二引脚。

按RS232通信协议规定,PC机串行口的第二引脚为数据输入端,这样,发出的数据就可被PC机接收到。

由PC机串行口的发送端TXD(PC机串行口的第三引脚)传输来的数据,作为RS232电平的信号输入到MAX232芯片的第13引脚,经过MAX232芯片进行电平转换后变为TTL电平,再由MAX232的12引脚输出到SM5964串行口的接收端口RXD。

从而完成数据的双向传输。

在设计中,使用了两个发光二极管D7和D8监视通信的工作状态。

4).LCD显示电路

对于LCDMGLS-12864,内置HD61202图形液晶显示模块,厂家为其设置了7条指令来完成对它的控制,有两条指令用于显示状态的设置,其余指令用于数据读/写操作,在此不对其进行详细的说明。

MGLS-12864与微处理器的连接方式有两种:

一种是直接访问方式,一种为间接控制方式。

直接访问方式就是将液晶显示模块的接口作为存储器或者I/O设备直接挂在计算机总线上,计算机以访问存储器或者I/O设备的方式操作液晶显示模块的工作。

而间接控制方式是计算机通过自身的或者系统中的并行口与液晶显示模块连接,通过对接口的操作达到对液晶显示模块的控制。

设计中我采用了间接控制方式,这种方式的特点是电路简单,控制时序有软件实现,可以实现高速计算机与液晶显示模块的接口。

电路图如下图所示,以P2口作为数据口,P3.3为/CSA,P3.4为/CSB,实现左右两区的显示和切换。

P3.5为D/I,P3.6为R/W,P3.7为E,三者产生控制LCD数据与状态的读写等信号。

电位器用于显示对比度的调节。

电路图如图2-6所示:

图2-6显示电路原理图

5).输出控制及报警指示电路

输出控制电路采用12V直流继电器对外电路进行控制,通过控制继电器的吸合时间来实现对温度的控制,继电器是与强电控制电路(大电流、高电压)联系在一起,会对应用系统产生严重干扰,使系统不能正常工作。

为了消除干扰,在微机接口与继电器之间分别加了光耦,使系统主机部分的地与强电控制电路的地隔开。

当温度超限或者系统出现致命错误时,系统会发出报警指示且实现在LCD上显示。

2.2系统的软件设计与实现

2.2.1设计总述

系统软件是以RTOS为平台的,RTOS作为一种专门为嵌入式微处理器设计的模块化、高性能的实时操作系统,提供了一种基于开放系统标准的完善的多任务环境。

它作为嵌入式应用软件的基础和开发平台,是一段嵌入在目标代码中的软件,在嵌入式系统启动后首先执行的背景程序,用户的应用程序是运行于其上的各个任务,RTOS根据各个任务的要求进行资源管理、消息管理、任务调度、异常处理等工作。

(图2-7软件体系结构)

 

系统软件的体系结构如图2-7所示。

硬件抽象层(HAL)把实时内核与硬件隔离开,实现了操作系统内核与设备无关,提高了应用系统的可靠性。

内核层是一个是实时多任务操作系统(RTOS)内核。

内核层上面是高层驱动和库函数,提供通用的API、I/O管理器。

应用程序层是用户的不同的任务。

2.2.2任务的划分

系统中每个任务均有以下三部分组成:

应用程序、任务堆栈以及任务控制块。

其中只有应用程序被烧入ROM,而任务本身则被置于RAM,待系统运行时再予建立。

任务堆栈用以存储CPU的寄存器内容。

当某任务由运行态变为其它状态时,CPU寄存器内容压入相应任务堆栈,反之则将相应任务堆栈内容置入CPU寄存器。

作为系统中定义的一个数据结构,任务控制块的内容包括任务堆栈的地址、任务当前状态、任务优先权等。

操作系统通过查询任务控制块内容实现对任务的管理。

在进行任务划分设计时,要考虑以下问题:

1).任务间的关系:

这包括两个方面,一方面是任务间的同步和通信,这可通过信号量、邮箱等通信方法实现。

另一方面,资源共享,通过信号量或其它方法实现。

我在系统设计中使用了信号量和中断的开启,实现上述功能。

2).定时或者延时:

一个任务可能需要每隔一段时间执行一次操作。

如温度采样计算任务,在设计中每秒分别对各路温度采样一次,然后进行计算。

这种定时操作可以而且必须使用操作系统的定时系统来实现。

3).等待操作:

在任务程序设计中,应尽量避免使用程序询问方法,而用中断方式来实现等待操作,除非程序执行时间小于任务调度时间。

另外为防止发生意外情况使等待事件不发生而引起任务无限等待的情况,都加了等待超时处理功能。

根据要实现的功能,我将系统划分为如下6个任务:

按键处理、LCD显示、串行通信、输出任务、控制运算、信号采集处理。

从系统设计方面,可以划分为人机交互模块、串行通信模块、温度测量及控制模块和远程加载模块。

系统软件结构图如图2-8所示。

图2-8系统软件架构

μC/OS-II的任务调度是按优先级进行的,根据各任务的实时性要求及重要程度,分别置它们的优先级为4、5、6、7、8、9。

其中0、1、2、3、OS_LOWEST_PRIO-3、OS_LOWEST_PRIO-2、OS_LOWEST_PRIO-1、OS_LOWEST_PRIO这几个优先级保留以被系统使用。

优先级序号越低,任务的优先级越高。

任务间的通信和同步是利用信号量和开关中断来实现的。

下面对各任务作简要的介绍。

1.按键处理任务

此任务主要完成键盘扫描工作。

用户可以通过键盘对系统进行控制,如改变运行状态、修改相关的参数等,系统必须做出及时的处理,因此在系统中把它的优先级设为最高,一旦有键被按下,系统就能够作出响应完成相应的功能。

2.LCD显示任务

此任务用于刷新LCD显示的工作。

系统的运行状态、各路的温度值、PID相关参数大小、各继电器的状态、错误指示及其它各种信息需要及时的通知用户,当有关的信息发生改变时,需要调用此任务更新显示。

3.串行通信任务

在设计中,通信任务一方面接收PC发来读写命令帧,对其进行分析处理后,做出相应的响应,从而实现PC机对其进行控制;另一方面也要把相关信息按要求组成相应的帧,发送给PC机。

4.输出任务

此任务完成对各路继电器进行控制,从而实现温度调节。

根据控制运算任务决策结果,负责各继电器占空比的调节。

5.控制运算

此任务是最重要的一环,当任一路温度转换结束后,都会发信号给控制运算处理任务进行处理,控制运算处理任务接到信号后,对信号分析之后,对要处理的测量结果进行转换查表等处理,算出实际温度值,一方面调用基于时间最优的PID控制算法加以决策处理,发信号给输出任务加以控制,另一方面也发信号给LCD显示任务更新显示。

6.信号的采集处理

此任务采用定时方式对各路温度信号进行采集,负责通道的选择,对LTC2430转换结果进行读取,根据设定,取转换结果的前16位,用一个无符号整数进行保存,然后存于各路温度存储区。

并发信号给控制运算任务进行转换。

2.2.3人机交互模块的详细设计

在实现中人机交互模块包含两部分:

键盘输入和LCD显示。

2.2.3.1任务的实现

键盘是最重要的一种输入设备。

一般在设计应用系统时,需要按键较少时采用独立式按键键盘,而在需要按键较多时,采用行列式键盘。

但行列式键盘不仅硬件接线复杂,键号的判断和识别程序也较为繁琐。

在此介绍使用软件将多个按键功能压缩至3个按键上,该键盘在硬件上使用独立式按键键盘的硬件结构,而在软件上实现了使用矩阵式键盘的功能。

该键盘不仅在硬件上接口简单,软件实现也非常容易。

其实现原理是:

对于矩阵式键盘,如果它有3行4列,则可以构成一个3

4键盘,共有12个功能键。

在设计的键盘中,行线使用一个按键实现,行线数由该键的按键次数确定,列线则由其它几个按键提供。

假如一个键盘使用3个按键,3个按键中1个用于提供行线,设置其它2个键的功能,当该键按键次数为1时,其它2个键为P11、P12功能,而当该键按键次数为2时,其它2个键为P21、P22功能,当该键按键次数为3时,其它2个键又为P31、P32功能,根据此原理,使用3个按键可以实现N行2列共N

2个键的功能,这里的N为用做行线的键即功能设置键的按键次数。

将该键的按键次数存于一内存单元(或寄存器)中,每按一次,该单元加1,读出该单元内容,就可知道其它2个键处于何种功能。

共定义了8个功能键:

单选择键,确认键,数值增加键,数值减少键,左移、右移、上移、下移键。

程序流程图如图所示

LCD显示任务只是接收其它任务发来的信号量,经分析判断后刷新相应的显示区。

其实现简单在此不再叙述。

2.3.3串行通信模块的详细设计

串行通信模块是系统设计中的一个重要部分。

它要实现与PC机通信,接收PC机发来的命令帧,在确认正确后进行分析执行,并向PC机发送相关信息和数据。

通信协议的详细规定见下一章。

2.2.4.1串口设备驱动程序设计

1.系统串行口工作方式和波特率的计算

1).串行口的工作方式

串行口的工作方式由串行口控制寄存器SCON来确定。

特殊功能寄存器SCON字节地址为98H,可以位寻址。

通过对SCON.7和SCON.6进行设置可以确定串行口的工作方式,它有四种工作方式,如表2-1所示。

表2-1串行口工作方式

SM0(SCON.7)

SM1(SCON.6)

方式

功能说明

0

0

0

移位寄存器方式(用于I/O口扩展)

0

1

1

8位UART,波特率可变(T1溢出率/N)

1

0

2

9位UART,波特率为fosc/64或fosc/32

1

1

3

9位UART,波特率可变(T1溢出率/N)

SCON结构如图2-9所示。

图2-9串行口控制字寄存器SCON

2).波特率的计算

串行口工作在方式0和方式2时,其波特率为固定值。

工作在方式1和方式3时波特率可变,与溢出率有关,设计中常用定时/计数器1作为波特率发生器。

计数器的工作模式共有4种,模式0~模式3,但是当串行口选择工作模式1时,计数器必须工作在模式2,自动载入计数模式,在模式2的计时下,使用的计数器寄存器为推理,而TH1则是在做自动载入计时值的设定。

波特率的计算公式为:

波特率=

(2-1)

设计时我们是先定出波特率再求TH1的值,将上式加以整理可得:

TH1=256-

(2-2)

在设计中,串行口(工作在)工作方式1且允许接收,通过语句SCON=0x50来实现。

计数器工作在模式2能够自动载入计数值,通过语句TMOD=TMOD|0x20来实现。

为便于使用,我设计了初始化串行口函数voidUart_Init(INT16Umclk,INT16Ubaud),利用此函数可根据系统工作频率和设定波特率完成串行口的初始化。

2.串行口输入输出驱动设计

采用异步通信时,如波特率为1200,则每传送一个字符约需10ms,所以串行口的接收和发送应采用中断方式来实现,否则会浪费大量的CPU时间。

为了可靠的接收和发送数据,专门设定了接收和发送缓冲区,在具体实现时,缓冲区采用环形缓冲区,它的大小按照任务的执行时间、通信速率和报文长短来定,一般为16至255字节,在系统中其值设为30。

1).串行口输入程序和串行口输入中断流程图如图2-10所示

图2-10串行口输入程序和串行口输入中断流程图

2).串行口输出程序和串行口输出中断程序流程图如图2-11所示

图2-11串行口输出程序和串行口输出中断程序流程图

3.任务调用接口

在应用程序设计中,只需分别调用函数Uart_Init()、Uart_SendStr()、Uart_Getch()、Uart_Sendch()等函数接口,即可完成对串口的操作,实现数据的输入和输出。

4.3.4.2串行通信应用程序的设计

在系统中串行通行程序是专门用于接收PC机发送来的读写命令,根据命令的不同,完成不同的操作,既可以对系统当前的运行状态或参数进行改变,也可以把PC机需要的数据信息打包发送。

在设计中,为简单起见,系统作为从机,只能被动接收PC机发来命令,对命令帧分析处理之后执行,可以改变系统当前的运行方式和参数。

当需要向PC激发信息时,它要按要求把相关信息组帧发送,如当前继电器状态、第一路温度值、第二路温度值等。

关于帧的类型和组帧格式,详细内容在下一章中论述。

它的流程图如图4-12所示。

图2-12串行通信流程图

2.2.5温度测量及控制模块详细设计

数据信号的采集处理是把实际过程中的模拟量、开关量以及其它信息量通过相关的方式送入计算机,再由计算机进行存储和进一步的处理(如计算、显示、控制等)。

模拟量的采集是将模拟量转换成数字量并送入计算机。

然后调用处理算法将这些数字量存储并进行二次计算处理,一方面要输出显示便于观察,另一方面调用相关的控制模块,对被测对象进行控制。

控制模块通常采用合理的控制算法,对被控对象进行控制,使其满足用户的要求。

此模块完成对温度信号的采集处理、控制运算和输出控制功能,是最重要的一个模块。

系统要实现对两路温度进行采集控制,其电路图见图4-3。

温度信号经两个模拟转换开关CD4052之后,以差分式输入模拟转换器LTC2430的输入端子,转换后的数字量送入微控制器SM5964,从而完成信号的采集。

由于20位模数转换器LTC2430采用了专有的无延迟DeltaSigma结构,消除了数字滤波器的接续时间,使每次转换均有效,只要将其转换结果进行正确的读出即可。

其数据输出格式如图4-4所示,当最高位EOC为低电平时,表示本次转换完成可以读取结果。

对于温度的计算,采用了查表法。

获得LTC2430转换结果之后,通过线性插值及标度变换之后,可以计算出当前的实际温度值。

以上的采集处理过程相应容易实现,在此模块中,主要是控制部分软件的设计,设计中采用了时间最优控制和PID算法相结合的控制方法,取得很好的效果,其实现如下。

1).控制算法

在工业过程控制中,应用最广泛的控制方法应该是PID控制,它是按偏差的比例(P)、积分(I)和微分(D)组合而成的控制规律。

比例控制简单易行,积分的加入能消除静差,微分能提高,改善系统的动态性能。

采用了数字PID的方式进行调节,其框图如图4-13所示。

图4-13PID控制框图

下面是增量式PID控制算法公式。

为了抑制饱和效应的发生,控制系统采用了积分分离式的PID控制算法。

(4-3)

即:

(4-4)

在上式中,

为系统采样周期,

为积分时间常数,

为微分时间常数,

为比例系数,

为积分系数,

为微分系数。

温度变化是个慢过程,如单纯采用PID控制,当有较大扰动或大幅度改变给定值时,会产生较大的偏差,此时在积分项的作用下,往往会产生较大的超调和长时间的波动。

因此在系统中又采用了PID算法与时间最优控制相结合的控制方式。

时间最优控制是Pontryagin于1956年提出的一种最优控制方法。

它是研究满足约束条件下获得允许控制的方法,也叫最大值原理。

用最大值原理可以设计出控制变量只在|u(t)|≤1范围内取值的时间最优控制系统。

而在工程上控制变量只取±1两个状态,而且依照一定的法则加以切换,使系统从一个初始状态转到另一个状态所经历的过渡时间最短,这种类型的最优切换系统,称为开关控制(Bang-Bang)系统,即:

时,

时,

为t=kT时控制器的输出,

为系统的最大输出,e(k)为温度测量值与给定值之差,当偏差大于零时,控制器输出最大值,控制对象加热.当偏差小于等于零时,控制器输出0,停止加热.这种算法具有控制简单、实现方便等优点,但当偏差接近零时,系统容易发生振荡.因此,采用PID算法与时间最优控制相结合的双模控制方式,控制规律为:

时,采用时间最优控制

时,采用PID控制

规定一阈值ε(偏差区域),当偏差大于ε时,实行时间最优控制,即Bang—Bang控制;而在阈值ε以内,实行PID控制.这样,既可以发挥Bang—Bang控制快速消除大偏差的优点,又能发挥PID控制精度高,超调小的优点,从而使静态、动态性能指标较为理想.

2).参数的整定

数字PID调节器参数的整定是根据控制对象对控制性能的要求,调整调节器的参数,使控制过程满足要求。

在系统采样周期确定的情况下,需要调整的参数有比例系数Kp、积分时间常数Ti和微分时间常数Td。

它们分别对控制性能的影响如下:

✧比例系数Kp:

它控制着系统调整的反应速度,减少静差,如Kp太小,系统动作缓慢,Kp加大,可以使系统动作灵敏,调节速度加快。

但Kp偏大,可能使系统震荡次数增多,调节时间加长。

Kp过大,可使系统不稳定。

✧积分时间常数Ti:

PID调节中的的积分项主要作用是消除静差。

Ti减少时,积分项作用增大,系统调节速度加快,但易使系统趋于不稳定,震荡次数较多。

Ti增大,积分项对系统性能的影响减少,跟踪速度减慢。

当Ti合适时,过渡度特性比较理想。

✧微分时间常数Td:

微分控制可以改善调节的动态特性,如减少超调量,缩短调节时间。

当Td偏大或者偏小时,超调量和调节时间都会增大,只有当Td合适时,才能得到比较满意的结果。

在做PID参数整定时,首先根据系统要求应选择合适的采样周期,采样周期确定之后,比例系数Kp、积分时间常数Ti和微分时间常数Td的整定可以根据一定的算法,比如扩充临界比例系数法、扩充响应曲线法以及PID归一化参数整定法来设定。

但是在现场系统不允许振荡或外加扰动信号,以上方法在现场不能使用。

实际上在现场主要根据经验整定参数,应遵循以下规则:

✧在进行PID参数调节时,调节幅度要小;

✧在调节时,需要各参数协同

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 党团工作 > 党团建设

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1