探索者机器人说明书配套教材.docx

上传人:b****6 文档编号:6160506 上传时间:2023-01-04 格式:DOCX 页数:75 大小:576.50KB
下载 相关 举报
探索者机器人说明书配套教材.docx_第1页
第1页 / 共75页
探索者机器人说明书配套教材.docx_第2页
第2页 / 共75页
探索者机器人说明书配套教材.docx_第3页
第3页 / 共75页
探索者机器人说明书配套教材.docx_第4页
第4页 / 共75页
探索者机器人说明书配套教材.docx_第5页
第5页 / 共75页
点击查看更多>>
下载资源
资源描述

探索者机器人说明书配套教材.docx

《探索者机器人说明书配套教材.docx》由会员分享,可在线阅读,更多相关《探索者机器人说明书配套教材.docx(75页珍藏版)》请在冰豆网上搜索。

探索者机器人说明书配套教材.docx

探索者机器人说明书配套教材

第一章探索者教学机器人简介

探索者教学机器人是具有感知功能、判断决策功能和动作执行功能的智能型机器人,它的出现,不仅为中小学信息技术教育提供了新的教学载体,也为各级各类学校的理论和专业教学提供了一个开放式实验实习平台。

通过这个载体和平台,可以学习和了解机械、电子、电机、传感器、单片机、计算机软硬件、人工智能等多方面的知识,培养广大青少年的动手能力、创新能力和协作能力,并在参加各级各类比赛和完成各种应用实验项目的过程中提高学生的综合能力。

通过本章内容的学习,将对探索者教学机器人有一个基本的了解,掌握一些基本的操作方法。

1.1探索者教学机器人的基本结构

探索者教学机器人由控制主板、液晶显示器、底盘、阁架、电机系统、电池以及各种传感器组成。

机器设计成圆盘形,层叠式。

由各个机械零部件和电子元器件组成的机电系统,采用开放式接口,交互式语言驱动,各部分可分解组合。

机械电子的开放式接口让使用者可在原有控制板的基础上扩展机械接口,安装多个直流电机和伺服电机。

通过EXPBUS总线扩展卡,还可方便地扩展控制板的功能,如增加超声测距卡、传感器扩展卡、电机扩展卡,I/0扩展卡及通用扩展卡等。

使机器人在原有的基础上,智能化程度更高,功能更强大。

下面通过探索者教学机器人图例(图1-1),一一介绍机器人的各部分名称和作用。

1、底盘、阁架

用于承载联结机器的各种机械及电子装置,用户可根据功能扩展的需要设置多层阁架,如图1-2所示。

2、控制主板

探索者控制主板采用了基于MC68HC11的扩展系统结构,以较少的外围芯片获得了丰富的硬件功能,其编程采用目前国际上通行的交互式C语言(简称ROBOIC),是机器人发烧友不可多得的、性价比极好的控制主板。

探索者控制主板采用合理开放的布局设计,充分考虑了可拆装性、易操作性和美观性等方面的要求,为用户提供了极其方便的硬件操作空间和安全简易的扩展接口配置,其布局如图1-3所示。

(1)LCD插座:

探索者配备了一个16x2的液晶显示模块,将其正确插入该插座,机器人在运行过程中可以显示2行16字符的文本信息,是探索者与操作者的交互界面之一;

(2)伺服直流电机口3:

探索者控制主板上扩展了四个直流伺服接口,编号为0~3,具备PWM(脉宽调制)功能,可以用于各种直流驱动装置,如直流马达、继电器等执行机构,旁边的红色和绿色用于指示方向;

(3)伺服直流电机口2:

同伺服直流电机口3;

(4)伺服直流电机口1:

同伺服直流电机口3;

(5)伺服直流电机口0:

同伺服直流电机口3;

(6)移动轮电机1:

探索者教学机器人左右各装备了一个直流驱动马达,分别对应于WHEEL0和WHEEL1两个五芯插座,是探索者的主要移动机构,安装时应注意左右对应关系;

 

 

 

图1—1探索者教学机器人整机图

 

图1—2探索者教学机器人拓展图

 

(7)移动轮电机0:

同移动轮电机1;

(8)电源插座:

电池组上电源线连接在此处,连接时应注意电池极性;

(9)充电插座:

探索者配备的12伏500毫安充电器上的同轴插头插入此插座可以对连接在机器人上的8*1.2伏串联电池组进行充电;

(10)充电指示:

黄颜色的发光二极管,用于指示探索者是否处于正常充电状态,若快速充电跳线插座短路,则该指示灯不亮;

(11)扩展电源插座:

给探索者扩展的直流电机口0~3和驱动轮电机驱动口0~1提供附加的电源,电源极性请见板上的标注,附加电源的规格为5~7节1.5伏干电池或7~8节1.2伏串联充电电池,但一般要求等效电压等于或略高于连接于(8)的电池电压;

(12)电源开关:

用于打开和关闭探索者;

(13)电源指示:

绿颜色的发光二极管,用于指示探索者是否处于工作状态;

(14)电压低指示:

红颜色的发光二极管,灯亮时,表示电源电压太低;

(15)功能按钮:

该按钮占用通用数字输入口7,在用户程序中可以获得该按钮的状态,另外,该按钮与复位按钮联合使用可以使控制板进入特殊启动模式,从而能够进行操作系统的装入;

(16)复位按钮:

按下此按钮使控制板复位,当与功能按钮联合使用可以使控制板进入特殊启动模式,从而可以进行操作系统的装入,具体做法是先按下功能按钮并保持,然后按一下复位按钮;(17)通用数字口0-6、8-9:

通用数字输入口,从左至右编号为0到6和8-9;

(18)通用模拟口7-4:

通用模拟输入口,从左至右编号为7到4;

(19)通讯指示:

黄颜色的发光二极管,灯闪烁时,表示控制板正与PC机进行通讯;

图1-3探索者教学机器人控制主板布局及接口示意图

(20)串行通讯插座:

RS232串行通讯接口;

(21)麦克风:

用于采集声音信号,占用通用模拟接口2;

(22)红外调节1:

用于调节红外发射管1的发射强度;

(23)红外发送1:

红外发射管1插座,该插座具有电源极性,用户在拆装时需注意方向;

(24)红外接收:

红外接受头插座;

(25)红外发送0:

红外发射管0插座,该插座具有电源极性,用户在拆装时需注意方向;

(26)红外调节0:

用于调节红外发射管0的发射强度;

(27)光敏传感器1:

预设的光敏电阻插座1,与右边的光敏传感器对应,也可以作为通用模拟输入口使用,编号为1;

(28)光敏传感器0:

预设的光敏电阻插座0,与左边的光敏传感器对应,也可以作为通用模拟输入口使用,编号为0;

(29)扩展接口:

该扩展接口插座与LCD插座一起构成了探索者的扩展总线;

(30)红外频率调节:

用于调节红外振荡电路的频率,使其位于38KHz左右;

(31)快速充电:

若需对电池组进行快速充电,应将该跳线座短路;

(32)蜂鸣器:

可以在用户程序的控制下产生不同频率的声响。

4、光敏传感器

用于检测外界光线的强弱,它实际上是一个可变的光敏电阻,它的接插方式没有极性。

5、红外接近传感器

用于探测、发射、接受外界物体电子信号。

6、碰撞传感器

碰撞传感器由碰撞环和微动开关组成。

碰撞环位于底盘的下部。

碰撞环通过螺钉、弹簧和支架与底盘相连,使碰撞环能灵敏地接收碰撞信息。

在底盘下部装有四个互成900夹角的微动开关,使机器人能感知来自八个不同方向的碰撞力。

7、电机、减速器

电机为永磁直流型电机,是移动轮的动力。

减速器为降低输出转速。

电机和减速装置制成一体,结构紧凑。

8、移动轮

移动轮制成中空免冲气式轮胎,具有质量轻、缓冲和降低噪音的特点。

9、从动轮

由转向轮,转向轮座,导向套和弹簧组成。

起辅助运动作用,使机器人能够平稳地行走和转向。

10、光电编码器

由码盘和红外发射接受模块两部分组成,用于传递位置信息和感知机器人行走的距离和转弯角度。

码盘分别安装于两移动轮内侧,见图1-4所示。

图1-4光电编码器图1-5充电器

11、电池组

机器人的电源。

装于电池盒内,配有9.6V高能量镍氢充电电池。

12、充电器

外置,9.6V智能充电器给电池组充电,见图1-5所示。

1.2探索者教学机器人的技术参数

探索者教学机器人的主要技术参数:

1、单片机工作频率:

2MHz

2、串口速率:

9600bps

3、IR振荡频率:

37.9KHZ

4、红外检测距离:

20cm-500cm

5、机器人最快速度:

78mm/s

6、编码器分辨率:

33脉冲/转

7、电机及减速器:

电压9V,转速200rpm。

8、驱动轮直径:

75mm,宽度:

21mm。

9、两驱动轮中心距:

155mm。

10、阁架(孔板)层间距离:

38mm。

11、碰撞环直径:

220mm,高度:

30mm,底边距地面距离:

21mm。

12、整机外形尺寸:

直径220mm,高100mm(单层阁架)。

13、整机重量(两层机型):

1.8Kg

1.3探索者教学机器人的特点和用途

探索者教学机器人融合了机械设计、模具设计、电子技术、电机控制、计算技术、通信技术、传感器及感测技术、人工智能技术和控制技术等众多先进技术,因而它的功能十分强大;探索者教学机器人拥有开放式的开发工具平台,使它的应用面十分广泛。

作为教学用智能机器人,它的特点和用途如下:

1.3.1特点:

(1)模块化结构:

你可以轻松自如地拆卸和组装能探索者教学机器人,在拆卸、组装的过程中,你将对探索者教学机器人的结构有深入的了解,并初步掌握机器人的工作原理。

(2)开放式接口:

探索者教学机器人具有开放性的接口,你可以根据不同任务的需要,增加和拓展相应的功能。

(3)交互式C语言:

具有标准C语言的特性,出色的交互式功能,使语言学习变得直观、轻松并富有乐趣。

1.3.2用途:

(1)信息技术教育的载体:

探索者教学机器人融合的众多先进技术,是信息技术的重要内容,更是智能技术的结晶,智能机器人的教学内容必将给信息技术基础教育带来新的活力,在中小学信息技术教学中智能机器人将会与计算机一起成为信息技术教育的工具,承载起信息技术教学载体的任务。

通过这个载体,可以使学生了解智能机器人这个信息技术前沿领域的发展和应用状况,为进一步学习智能机器人技术的有关知识打下基础。

使学生掌握为一种智能机器人下载程序的方法,了解智能机器人的各类传感器和驱动装置的作用。

理解体会程序是智能机器人的灵魂,学习为智能机器人编写程序,通过为机器人编写程序,提高学生的分析问题和解决问题的能力。

通过完成项目任务和比赛项目,使学生在为机器人扩充功能的过程中学习有关数字电路方面的知识,在组装扩展机器人的过程中培养学生的动手能力、协作能力和创新能力。

(2)实验实习平台:

在这个平台上你可以进行机械、电子线路、单片机、传感器等设计,还可以进行感测技术、人工智能、数字控制、电机控制、数字信息处理等实验。

(3)研究开发平台:

在机器人EXPBUS总线的支持下,你可以扩展多个直流电机或伺服电机,还可以扩展超声、颜色、红外等多种传感器,使你的机器人智能化程度更高。

(4)能力培养平台:

探索者教学机器人融合的众多先进技术的高科技产品。

学习者通过为机器人下载程序、编写程序、理解机器人工作原理,通过亲手装配、实验、实施机器人项目、参加机器人比赛,不知不觉中自己的学习动力和兴趣在增加,自己的信心在增强、综合能力在提高。

1.4硬件配置和软件工具

在了解机器人的基本结构和特点、用途之后,要使机器人动起来,还必须具备两个主要因素:

一是硬件配置,二是软件工具。

1.4.1硬件配置

(1)要有一台计算机,操作系统为Windowsg5/98或WindowsIW4·0以上平台,计算机有一个9针的空余串口。

(2)有一根可以连接计算机和机器人的串口线(随机附)。

1.4.2软件工具

交互式机器人C语言(RoboIC)介绍

(1)RoboIC简介

交互式机器人C语言(InteractiveRobotC,简称RoboIC)是为人工智能科技创新活动专门设计的软件系统,它实现了C语言的一个子集,是目前国际上流行的机器人(体系结构为MC68HC11)专用程序设计系统。

RoboIC包含程序流程控制结构(for、while、if、else)、局部变量、全局变量、数组、指针、16位和32位整数以及32位浮点数,并提供了专门用于机器人行为控制的库函数。

RoboIC集成开发软件由编译环境和控制主板操作系统两部分组成,编译环境具有交互式命令行编辑、编译和调试功能,控制主板操作系统是一个基于MC68HC11微处理器的、支持多任务的嵌入式实时系统,但是RoboIC不直接编译生成MC68HC11的机器代码,而是先编译生成基于堆栈虚拟机的伪代码,然后由操作系统解释执行。

RoboIC的这种工作方式具有如下优点:

✧解释执行:

这种运行模式使得系统能够实时地检查运行时错误并防止系统崩溃。

例如:

RoboIC在运行时进行数组下标检查以防止编程错误。

✧设计方便:

为一个堆栈机编写编译器显然比为特定的处理器编写编译器容易,同时,由于RoboIC生成的伪代码与具体的处理器无关,所以将RoboIC从一种处理器移植到另一种处理器,只需要重写伪代码解释器,而不需重写编译器;

✧代码精简:

堆栈虚拟机的伪代码比机器代码更简短。

✧多任务:

由于伪代码程序完全基于堆栈,进程状态由它的堆栈和程序计数器所决定,因此只需要装载新的堆栈指针和程序计数器就可以方便地实现任务切换,并且任务的切换由操作系统而不是由编译器完成。

(2)RoboIC与标准C比较

交互式C语言是建立在ANSIC标准上的,但是它们有些重要的区别,其中的许多区别是因为要求RoboIC比ANSIC更“安全”所导致的。

例如,RoboIC在运行时要检查数组下标,所以数组不能作为指针使用,也不可以进行指针运算,这一点与ANSIC是不同的。

另一些区别是由于要求RoboIC的运行时间更短更高效所导致的。

例如,RoboIC的printf函数就没有标准C语言中的许多不常用的格式化选项。

还有一些区别是由于要求RoboIC比ANSIC更简单,例如,所有声明都是全局的。

在本书的其他地方,提到C时,都适用于RoboIC和标准C。

当需要对两者进行区别时,将特别指出是RoboIC还是标准C。

而在没有提到这些限定的时候,都是指RoboIC而言。

 

第二章探索者教学机器人应用基础

本节主要介绍探索者教学机器人语言系统的基本知识和应用基础,并掌握RoboIC的安装,程序的编写、保存、下载、卸载等。

2.1机器人基本操作方法

探索者教学机器人能够识别的是RoboIC语言。

用户用这种语言与你的机器人进行交流,为它编写程序,用程序教它完成各项任务。

因此必须要有一张RoboIC1.0的系统光盘(随机附件),并将该语言系统安装到计算机,其次应用这个系统为机器人下载操作系统,最后为机器人编写、下载程序并运行和卸载程序。

2.1.1安装RoboIC1.0语言系统

RoboIC1.0语言是机器人的专用语言,一般的计算机中不会安装这种语言,所以在使用之前必须安装RoboIC1.0系统。

在计算机的光驱中放入“探索者”的配套系统光盘,Windows操作系统将自动启动RoboIC1.0的安装向导,或者从资源管理器中打开RoboIC1.0软件光盘,直接运行光盘根目录下的setup.exe启动安装向导,然后根据安装向导的提示填写必要的安装信息,RoboIC1.0将自动被安装到指定的目录,并在桌面建立RoboIC1.0的快捷方式。

2.1.2为机器人下载操作系统

机器人的操作系统管理着机器人的软件资源和硬件资源。

只有在操作系统的支持下,机器人才能识别程序,并按程序的内容、步骤完成指定的任务。

(1)用“探索者”机器人配套的串行通信电缆将控制主板联接到计算机的空闲串口上,并确认计算机串口工作正常。

(2)打开“探索者”电源开关,若主板蜂鸣器发出“嘟”的响声,同时LCD面板上显示“RoboICv1.0Explorerver1.0”,表明控制主板上已经装载了操作系统,并已正常运行,此时启动RoboIC,若串口设置正确,RoboIC将自动初始化控制主板并编译和下载系统库函数到控制主板内存,如图2-1所示,说明操作系统已经可以正常运行了,这时为机器人下载操作系统这一步可以省略,否则,按照以下步骤重新下载操作系统。

图2-1启动RoboIC

(3)从主菜单中选择控制主板(B),然后,从其下拉菜单中选择功能菜单重载操作系统或设置,此时将弹出控制主板设置或下载操作系统对话框,分别如图2-2和图2-3所示。

图2-2控制主板设置对话框

图2-3下载操作系统对话框

(4)根据

(1),在对话框中选择正确的串行口,并按照下载操作系统对话框的要求使控制主板进入下载状态,点击浏览按钮,选择正确的系统定义文件,然后确认,RoboIC开始下载操作系统到探索者的控制主板。

图2-4操作系统下载成功

(5)下载成功后,RoboIC将提示按复位键(RESET)运行操作系统,操作系统运行正常与否请参照

(2),然后按确定按钮以进行后续操作,如图2-4所示。

若系统库函数还没有装入的话,RoboIC会自动装入缺省的库函数,最后显示如图2—1所示。

操作系统已成功下载完毕,机器人可以正常运行,现在可以使用RoboIC与机器人进行交流了。

用户可以在交互窗口中输入所有的交互式RoboIC命令和RoboIC表达式,例如:

键入“1+2”,将立即得到响应“3”。

2.1.3为机器人编写程序

为机器人编写程序也是本节要掌握的应用之一,现在请按照下面的方法为机器人编写程序。

(1)新建文档

方法:

在RoboIC窗口菜单栏中单击“文件”菜单,然后单击“新建”选项或直接单击

图标,建立空白文档,新建的空白文档如图2—5所示。

如果在RoboIC窗口中直接编写程序,RoboIC窗口就会出现错误信息提示。

所以必须建立一个空白文档,然后在空白文档中编写程序。

 

图2—5新建空白文档

(2)编写程序

现在可以在如图2—5所示的空白文档中输入下列实例中的程序。

注意:

只输入左侧的程序部分即可,右侧的“/*···*/”是对程序命令或语句的注释,

程序并不执行它,所以不必输入,如图2—5所示。

图2—6实例程序编入窗口

 

[实例2-1]

voidmain()/*主程序*/

{/*程序开始标志*/

drive(40,0);/*机器人向前走*/

sleep(2,0);/*延时2秒钟*/

stop();/*机器人停止*/

sleep(2,0);/*延时2秒钟*/

drive(60,0);/*机器人继续向前走*/

sleep(2,0);/*延时2秒钟*/

stop();/*机器人停止*/

sleep(2,0);/*延时2秒钟*/

drive(80,0);/*机器人继续向前走*/

sleep(2,0);/*延时2秒钟*/

stop();/*停止运行*/

}/*程序结束标志*/

程序编写输入完以后,先检查一下,看看是否有输入错误的地方,如果没有就可以保存程序了。

(3)保存程序

程序编写完以后,需要把它保存起来,保存程序方法如下:

在RoboIC窗口中单击“文件”菜单,单击“保存”选项或直接单击

图标,我们把程序保存在系统libs文件夹中,给这个实例的程序起个名叫“走走停停”。

如果你没有保存程序,而直接进行其他操作,RoboIC窗口会提醒你保存程序,然后才能继续进行操作。

2.1.4为机器人下载、运行程序

为机器人编写程序,实际上是把程序输入到计算机,并保存在计算上,需要时可以随时调用。

现在通过计算机把程序输入给机器人,通过计算机将程序传给机器人的过程,叫做为机器人下载程序。

现在以为机器人下载实例程序“走走停停”为例,介绍下载程序和运行程序的方法。

1、下载程序

(1)下载当前窗口中的程序

如果程序已经显示在RoboIC窗口中,如图2—7所示,在RoboIC窗口菜单栏中单击“下载”菜单,然后单击“下载当前程序”选项,或直接单击

图标,此时程序就会被下载到机器人当中。

图2—7下载当前窗口中的程序

(2)下载文件夹中的程序

①打开文件夹:

在RoboIC窗口文件菜单栏中选择“文件”菜单,点击“打开”命令或单击图标;选择文件:

在打开的RoboIC对话框中,选择“RoboIC”文件夹→“libs”文件夹→“走走停停.C”,

然后打开“走走停停.C”程序文件,于是RoboIC窗口中出现了一个名为“走走停停.C”的文件窗口,如图2—8所示。

(1)步骤下载。

②在RoboIC窗口菜单栏中单击“下载”菜单,然后单击“下载程序文件”选项,打开文件夹“libs”,选择文件“走走停停.C”,然后打开,如图2—9所示此时程序“走走停停.C”就会被下载到机器人当中。

在下载过程中你可以看到机器人控制板上的黄色发光二极管(通讯指示19)在闪动,表示正在传递信息。

如果下载程序成功RoboIC窗口会出现如图2—9所示的提示。

如果下载程序失败,RoboIC窗口就会出现如图2—10所示的提示,提示问题出在什么地方,在修改程序之后,再继续下载,直到出现如图2—10所示的提示为止。

图2—8打开文件夹中的程序

图2—9下载文件夹中的程序

图2—10下载程序成功提示

图2—11下载程序失败提示

2、运行程序

现在从机器人的通信串口拔下串口线,把机器人放在地上,然后按一下机器人控制面板上的“复位键”,机器人就开始按程序步骤执行动作了。

运行程序也是检验程序、调试程序的过程。

2.1.5为机器人卸载程序

如果出现如图2—11所示的情况,说明机器人已被下载程序占用,请按以下3种方法卸载机器人当中的程序。

(1)直接在交互式对话窗口的命令编辑窗口中输入语旬“unload〈程序名〉.C”。

(2)用重载操作系统来卸载机器人当中的程序。

(3)重新启动RoboIC1.0,刷新机器人内存以卸载机器人中的程序。

2.2探索者教学机器人的基本使用

本节通过探索者教学机器人的驱动、视觉、触觉、听觉、发声等系统的介绍,了解机器人五类传感器的基本应用。

2.2.1探索者教学机器人的驱动系统

“探索者”教学机器人驱动系统是由电机、减速器和驱动轮组成的(见图1—1)。

要想让机器人移动,只要控制电机的转动。

RoboIC控制机器人电机的驱动的基本指令是wheel(x,y)函数和drive(x,y)函数。

2.2.1.1wheel(x,y)函数

[实例2-2]请在RoboIC窗口命令行编辑器中直接输入下面的程序语句。

{wheel(0,80);sleep(5.0);stop();}

按回车运行该语句,观察机器人的运动状况,并记录下来。

如果没看清楚,想再观察一次,就按“↑”键,命令行就会出现刚刚输入的语句,再按回车键,把该语句在执行一次即可。

[实例2-3]现在用同样的方法再输入语句。

“{wheel(1,80);sleep(5.0);stop();}”

运行该语句,并比较两个实例中机器人的运动状况。

[实例2-4]现在将实例2-2或实例2-3中的80换成100,观察机器人的运动发生什么变化?

[实例2-5]如果将实例2-2或实例2-3中的80换成-80,机器人将怎样运动?

请注意观察机器人的运动与前面的运动有什么不同?

通过对前面4个实例的学习,可以看出:

●当x为0时,机器人的左侧电机转动,机器人往右转圈;当x为1时,机器人的右侧电机转动,机器人往左转圈;可见x是控制机器人左右两只电机工作的;

●y既可以控制机器人电机的转动速度,也可以控制机器人电机的转动方向。

当y>0时,机器人“前进”,数值越大,机器人“前进”的速度越快;当y<0时,机器人“后退”。

请你记住y的取值是从100(正向最大)到-100(反向最大)。

[练习2-1]新建一个空白文档,然后输入电机驱动程序。

voidmain()

{

wheel(0,60);/*左侧电机以60的速度启动*/

wheel(1,60);/*右侧电机以60的速度启动*/

sleep(3.0);/*延时3秒钟*/

wheel(0,0);/*左侧电机速度为0*/

wheel(1,60);/*右侧电机继续以60的速度转动*/

sleep(2.0);/*延时2秒*/

wheel(0,60);/*左侧电机以60的速度转动*/

wheel(1,60);/*右侧电机继续以60的速度转动*/

sleep(2.0);/*延时2秒钟*/

stop();

}

程序输入完以后,先保存到文件夹中,然后再按照为机器人下载、运行程序的步骤进行操作,并观察机器人的运动是否与程序要求相同。

2.2.1.2drive(x,y)函数

[实例2-6]请在“新建空白文档”输入下面的电机驱动程序。

voidmain()

{

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

当前位置:首页 > 自然科学

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

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