CDIO工程实践 无线充电智能循迹小车制作

51单片机学习笔记 专栏收录该内容
8 篇文章 1 订阅

一、CDIO理念

  • CDIO工程教育模式是近年来国际工程教育改革的最新成果。从 2000 年起,麻省理工学院和瑞典皇家工学院等四所大学组成的跨国研究获得 Knut and Alice Wallenberg 基金会近 2000 万美元巨额资助,经过四年的探索研究,创立了 CDIO 工程教育理念,并成立了以 CDIO 命名的国际合作组织。
  • CDIO代表构思(Conceive)、设计(Design)、实现(Implement)和运作(Operate) ,它以产品研发到产品运行的生命周期为载体,让学生以主动的、 实践的、 课程之间有机联系的方式学习工程。CDIO培养大纲将工程毕业生的能力分为工程基础知识、 个人能力、 人际团队能力和工程系统能力四个层面,大纲要求以综合的培养方式使学生在这四个层面达到预定目标。

更多有关CDIO的介绍:https://baike.baidu.com/item/cdio/4644769?fr=aladdin

二、工程目标

两人为一个小组,设计制作无线充电智能循迹小车,包括无线充电发送、接收与储能装置一套。小车外形尺寸长宽不大于26cm×18cm,高度不大于26cm,重量不限。

三、技术要求

  • 制作一套无线充电发送、接收与储能装置,其能源输出装置在地面上而且小车能够通过,小车能源接收装置安装在小车底盘上。能源供电站由教师提供,为 5V/1A/USB 接口电源,供电站供电时间限定 1 分钟。
  • 制作一个无线充电智能循迹小车。电动车使用适当的安全的储能装置,经能源转换成适合方式驱动小车。小车上不得采用电池供电器件。
  • 在供电站储能 1 分钟后,当小车检测到供电站停止供电时,应立即自行启动(停留时间超过 5 分钟或手动均判定为失败),向前直线方向行驶,直至能量耗尽。
  • 小车能自动避障,绕过障碍物后小车能回到原来直线方向上继续行驶。
  • 在达到最佳技术要求指标条件下尽量降低物料成本。

无线充电智能循迹小车是一个多种技术融合的复杂工程问题,应充分考虑各部分的能源转换效率、车体重量和小车驱动装置的效率等工程问题。

四、构思与方案论证

1. 主控模块

  • 方案一:采用传统89C51芯片为控制核心,具有4KB的程序存储器,128KB的数据存储器,64KB的片外存储器寻址能力,64KB的片外数据存储器寻址能力,32根输入/输出线,1个全双工异步串行口,2个16位定时/计数器,5个中断源,两个优先级。但没有ISP下载线及SPI接口,功能单一,运算速度慢,控制过程比较繁琐,故放弃该方案。
  • 方案二:STC89C52RC单片机是宏晶科技推出的新一代高速/低功耗/超强抗干扰的单片机,仅由时钟电路、复位电路和电源电路构成。针对电机控制,强干扰场合,且价格合理。STC89C52RC是一种低功耗、高性能CMOS8位微控制器,具有8K字节系统可编程Flash存储器、512字节RA、32位I/O口线、内置4 KB EEPROM、3个16位定时器/计数器、4个外部中断结构和全双工串行口。另外, STC89C52RC可降至0HZ静态逻辑操作,可选择节电模式。

综上所述,采用方案二作为控制器模块方案。因为STC89C52RC单片机处理速度快,功耗低,抗干扰能力强,符合我们选取的标准。

2. 无线充电

分析技术要求可知,制作无线充电智能循迹小车首先要实现无线充电,电动小车需使用适当容量的超级电容储存电能给小车供电。并且当检测到无线充电发射器停止充电时,应立即驱动小车向前行驶。无线充电装置为电动小车充电提供行驶的能量。经过一番讨论之后我们决定使用 XKT-335、XKT-412 和 T3168 芯片组成无线充电装置的发射器和接收器,使用超级电容储存电能,超级电容直接给步进式电机供电。通过单片机控制其他外设检测超级电容是否停止充电,立即驱动小车前进。

无线充电技术源于无线电能传输技术,利用磁共振在充电器与设备之间的空气中传输电荷,线圈和电容器则在充电器与设备之间形成共振,实现电能高效传输技术。无线充电装置方式的设计如下:

  • 方案一:无线电波原理是将环境电磁波转换为电流,通过电路传输电流。这种无线充电方式传输距离大于10米,适用于远距离小功率充电。不过,因为转换效率较低的原因,如果用这一方式,充电时间将比较长,成本较高。
  • 方案二:电磁感应原理是电流通过线圈,线圈产生磁场,对附近线圈产生感应电动势,产生电流。具有传输距离短,转换效率高的优点,使用位置相对固定且技术简单,很适合作为无线充电技术使用。综上所述,结合成本和实际功能考虑,采用方案二的电磁感应原理实现对电动小车无线充电。

3. 自动启动模块

  • 自动启动模块我们主要考虑了两种方案。第一种方案:使用光敏三极管,在充电的发射装置中安装红外光管,在小车上制作一个黑室,在充电完成后,发送模块,熄灭红外光,接受模块检测到以后,随即做出相应开始启动,缺点在于电路结构复杂,而且我们对于光敏三极管运用的不熟练。所以电路的调试很慢。第二种方案:使用 P 沟道 MOS 管,当 MOS 管的栅极没有电压输入时,MOS管导通,立即驱动电机开始运作。
  • 因为第二种方案的电路设计相对简单,而且 MOS 管导通后电阻基本为0,所以对于线路的损耗很小。所以我们最终选择第二种方案,使用 P 沟道 MOS 管。

4. 开关选择

  • 方案一:继电器是一种电控制器件,它实际上是用小电流去控制大电流运作的一种"自动开关"。但是固态继电器对过载有较大的敏感性,必须用快速熔断器或RC阻尼电路对其进行过在保护。固态继电器的负载与环境温度明显有关,温度升高,负载能力将迅速下降。半导体器件关断后仍可有数微安至数毫安的漏电流,因此不能实现理想的电隔离。
  • 方案二:开关三极管具有完成断路和接通的作用,被广泛应用于各种开关电路中,如常用的开关电源电路、驱动电路、及输出电路等。具有安全可靠、开关速度快等特点,但由于三极管基极触发电压过大,电容上的电压达不到触发状态,不适用于我们的电路故放弃该方案。
  • 方案三:使用自制电池开关,内含电磁铁,在磁场的作用下,两个簧片被磁化互相吸引接触而吸合在一起,使结点所接的电路连。外磁力消失后,两个簧片由于本身的弹性而分开,线路断开。具有比一般开关结构简单、体积小、工作寿命长等优点,不会多余的消耗超级电容上的电能实现最大程度的利用小车电能。

综上所述,因为自制电池开关不会消耗电容上的电能,故采用方案三中的自制电池开关作为开关。

5. 自动避障和寻迹

基于超声波检测障碍物的距离,由单片机作控制器,对测量信息进行分析, 确定障碍物的位置,调整车的运行状态,使其能够自动躲避障碍物。智能车主要由 STC89C52RC 单片机、法拉电容放电供电、步进式电机驱动、超声波测距、红外光电传感器寻迹等模块组成。

超声波测距的工作原理:超声波发射后遇到障碍物被反射,接收、检测反射回来的超声波,可测量出超声波从发射到接收之间的时间(设为T),从而计算出与障碍物之间的距离(设为L).超声波从发送到被再次接收所传播的距S=2L,它在空气中的传播速度是V=340米/秒,根据公式V=S/T可得,L:VT/2。自动避障小车工作原理:用超声波测量前方、左侧和右侧等方向的障碍物距离,由控制器对测得的障碍物距离与预设的安全距离比较,控制电机的运转(前进、停止和后退),实现躲避障碍物运行。

利用红外光电传感器对路面黑色轨迹进行检测,并将路面检测信号反馈给单片机。单片机对采集到的信号予以分析判断,及时控制驱动电机以调整小车转向,从而使小车能够沿着黑色轨迹自动行驶,实现小车自动寻迹的目的。循迹是指小车在白色地板上循黑线行走,由于黑线和白色地板对光线的反射系数不同,可以根据接收到的反射光的强弱来判断“道路”。通常采取的方法是红外探测法。红外探测法,即利用红外线在不同颜色的物体表面具有不同的反射性质的特点,在小车行驶过程中不断地向地面发射红外光,当红外光遇到白色纸质地板时发生漫反射,反射光被装在小车上的接收管接收;如果遇到黑线则红外光被吸收,小车上的接收管接收不到红外光。单片机就是否收到反射回来的红外光为依据来确定黑线的位置和小车的行走路线。红外探测器探测距离有限。 小车进入循迹模式后,即开始不停地扫描与探测器连接的单片机I/O口,一旦检测到某个I/O口有信号,即进入判断处理程序(switch),先确定 4 个探测器中的哪一个探测到了黑线,如果左面第一级传感器或者左面第二级传感器探测到黑线,即小车左半部分压到黑线,车身向右偏出,此时应使小车向左转;如果是 右面第一级传感器或右面第二级传感器探测到了黑线,即车身右半部压住黑线,小车向左偏出了轨迹,则应使小车向右转。在经过了方向调整后,小车再继续向前行走,并继续探测黑线重复上述动作。

五、详细设计

系统总体设计框图如图所示

1. 主控电路设计

主控制电路采用 STC89C52RC 单片机作为 1min 定时电路的芯片,通过时钟电路的设计和软件的编程能够使得完成精准 1min 定时,晶振选用12MHz,时钟电路与单片机连接如图所示。

通过与无线充电模块的相结合,实现精准定时 1min 的充电,检测到停止充电后,小车立即自行启动。

2. 无线充电发射端设计

根据电路的等效阻抗,在形成并联谐振状态时,通常电感的电阻较小,可以认为电阻对频率的影响忽略不计。因此:其中,L 为线圈电感,C 为电容匹配值,为发射频率。

在有高频交流电通过时,导体中电流密度随指数衰减,其中, 1为导体表明的电流密度, 为距离导体表面 d 处的电流密度。有如下关系:

δ为导体内部电流密度下降至导体表面电流密度 1的 −1时,距表面的距离。其中,ρ为导体的电阻率,ω为交流电的角频率,μ为导体的绝对磁导率。而δ的估算公式为:

在发射端与接收端分别采用并联电容匹配使得电路工作时产生几乎完全的谐振。N 为线圈匝数,μ1 为真空磁导率,R为线圈的半径,a 为线圈横截面的半径。发射方与接收方线圈电感量 L 计算采用经验公式:

如图所示,为无线充电发送端电路。

3. 无线充电接收端电路检测设计

因需要满足充电 1min 后电动小车立即自行启动,向前行驶。所以在无线充电的接收端设计一个充电过程检测的模块,当检测充电结束之后便就改变电路此时的状态,小车会自行立即启动向前运动。

采用 PMOS 管与外围组合电路形成一个检测电路,经过多次外围的电路分析与计算,最后得出了自动检测电路的原理设计图。PMOS管的功耗较低,对本身充电过程中的能量损耗较小,使用方法与普通 NPN 三极管相类似。

如图所示,为无线充电接收端电路。无线充电运用电磁感应原理为小车的超级电容进行充电。具体原理:首先发射端接人直流电源,通过全桥电路生成方波交流电压,控制开关管的频率改变方波的周期,当电压加载到 LC 谐振电路上会生成交流电,经过线圈的作用会产生高频变化的磁场。其次将二次侧线圈放人,会在二次侧产生感应电压。感应电压经过整流、稳压、变压后给超级电容充电。

4. 超级电容充电

我们在对超级电容进行选型时,我们从电容的容量,一分钟的充电电荷量,充电后放电的时间进行了实际测验,测试数据如下表:

计算公式Q=CU。通过查阅大量资料以及实践,我们发现超级电容的充电要经过恒流,恒压,涓流三个过程。当恒流充电时的充电速度最快,所以要实现小车前行距离尽可能远,最终我们使用了1个5.5V,10F的电容。

5. 小车运动过程分析

如图所示,为驱动小车运动的设计流程图。

采用物理上的受力分析方法对小车在水平面上运动的受力分析,然后得到相应的理论值数据,从而确定对小车电机驱动电路以及超级电容(法拉电容)充电容量的设计。下图为小车在水平面运动时的受力分析图,如图所示。

  • 小车在静止时可以得到的是: FN=G=mg
  • 小车在运动时综合考虑由于本设计中的小车采用的是电机转动,通过齿轮结合然后金属轴穿过齿轮完成带动小车车轮完成小车前进的。但是,小车在运行过程中由于电机的齿轮的摩擦会进行一部分的消耗,小车前进的动力通过小车车轮与地面的摩擦产生前的推进力。分析如下:F合=F摩-f阻=μFN-f阻=μmg-f阻
  • 供电站储能 1 分钟后,当小车检测到供电站停止供电时,应立即驱动电机,使小车启动,向前直线方向行驶,直至能量耗尽。

6. 自动避障和智能寻迹

超声波测距原理:检测超声波向某一方向发射遇到障碍物后反射的回波,从而测出超声波 波源与障碍物之间距离。超声波在空气中的传播速度约为340m/s,发射超卢波到接收反射波之间的间隔时间为t,则可以算出波源与障碍物之问距离s=340t/2。超卢波发射端在单片机前置电路的驱动下工作,接收端的信号放大、整形后在单片机的中断口产生中断,通过发射和接收的时间差计算出小车与障碍物的相对距离r,小车避障原理图如图所示。

避障模块:在小车进入避障模式时,小车会不断地扫描 I/O 口.当超声波传感器反馈有障碍物信号时,小车会右转右转一定角度或左转一定角度继续前行,当再次遇到障碍物时小车会重复执行该流程。

避障程序设计流程图如下图所示:

设计中通过循迹模块前方的红外光电传感器来检测地面情况,硬件系统设计要求小车在白色路面上跟循黑胶带直线运动,红外线经白色路面时会被反射回来,接收管则会接收到红外信号,而红外线经黑色路面时会被吸收掉。接收管接收到不同的信号均会传输到 LM393 电压比较器,在电压比较器中,接收电压和比较电压比较后产生 “0” 和 “1” 两种信号,单片机接收到这两种电平信号时可以判断出是否检测到黑色路线。程序中相应的延迟时间可以在根据路线转弯角度的情况做适当的调试后确定,以达到最好的循迹效果。事先设置好的路线宽度也应该根据小车左右两个检测传感器宽度而定,偏大或偏小都不利于检测.甚至可能会造成小车冲出路线。循迹程序流程图如图所示。

本程序主要是通过主板左右两个光敏传感器感应光照:当光线从小车右侧照过来时,右边光敏传感器检 测到光照而左边没有检测到,单片机指令为右转弯;当光照从小车正前方传来时,两个光敏传感器同时检测到光照,单片机指令为前进;当光源移动时,光照从小车左侧传来,单片机指令为左转弯。依据这样的原理,小车会周而复始地执行寻光任务。

五、实物测试

CDIO工程实践 无线充电智能循迹小车制作

我们完成了一个无线充电智能循迹小车的制作。无线充电能源输出装置在地面上而且小车能够通过,小车能源接收装置安装在小车底盘上。电动车使用适当的安全的储能装置,经能源转换成适合方式驱动小车。在供电站储能 1 分钟后,当小车检测到供电站停止供电时,立即自行启动,向前直线方向行驶,小车能自动避障,绕过障碍物后小车能回到原来直线方向上继续行驶,直至能量耗尽。

  • 18
    点赞
  • 7
    评论
  • 42
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

<p> <span>本课程从零开始,以通俗易懂的方式讲解Java技术,手把手教你掌握每一个知识点。</span> </p> <p> <span>真正做到零基础入门学习,</span><span style="color:#FF0000;">最适合初学者的教程!</span> </p> <p> <span style="color:#FF0000;"><br /></span> </p> <p> 本课程为JavaSE的阶段项目,通过<strong><span style="color:#00B050;">《购物系统》</span></strong>综合训练前面讲过的所有技术点,如:面向对象、集合、异常、IO、线程、反射、设计模式、JDBC等。 </p> <p> <br /></p> <p> <strong>项目中包含的功能:</strong> </p> <p> <span></span> </p> <p> 1.用户管理 </p> <p>     1.1 用户注册 </p> <p>          用户名不能与已存在的用户名相同 </p> <p>          要对密码进行加密处理 </p> <p>     1.2 用户登陆 </p> <p>          禁用的账户不能登陆 </p> <p>     1.3 修改密码 </p> <p>     1.4 用户注销 </p> <p> 2.商品管理 </p> <p>     2.1 商品展示 </p> <p>          支持分页显示 </p> <p> 3.购物车管理 </p> <p>     3.1 添加商品到购物车 </p> <p>     3.2 从购物车删除商品 </p> <p>     3.3 修改商品数量 </p> <p>     3.4 清空购物车 </p> <p>     3.5 查看购物车 </p> <p>     3.6 结算 </p> <p> 4.订单管理 </p> <p>     4.1 生成订单 </p> <p>     4.2 查看我的订单 </p> <p>     4.3 查看订单详情 </p> <p> <span><br /></span> </p> <p> <strong>数据库设计:</strong> </p> <p> 1. 商品表    t_product </p> <p>     id </p> <p>     name </p> <p>     price </p> <p> 2. 用户表    t_user </p> <p>     id </p> <p>     <span>username</span> </p> <p>     password </p> <p>     phone </p> <p>     address </p> <p>     status -- 状态,1表示启用,0表示禁用 </p> <p> 3. 订单表    t_order </p> <p>     id </p> <p>     user_id </p> <p>     no </p> <p>     price </p> <p>     <span>createdate</span> </p> <p> 4. 订单明细表    t_item </p> <p>     id </p> <p>     product_id </p> <p>     <span>num</span> </p> <p>     price </p> <p>     order_id </p> <p> <br /></p> <p> <br /></p> <p> <span><strong><span style="color:#FF0000;">教学全程采用笔记+代码案例的形式讲解,通俗易懂</span></strong><strong><span style="color:#FF0000;">!!!</span></strong></span> </p> <p> <img src="https://img-bss.csdn.net/201904040930441804.png" alt="" /></p> <p> <br /></p> <p> <img src="https://img-bss.csdn.net/201904040931068307.png" alt="" /></p> <p> <br /></p> <p> <img src="https://img-bss.csdn.net/201904040931162514.png" alt="" /></p> <p> <br /></p> <p> <img src="https://img-bss.csdn.net/201904040932021979.png" alt="" /></p> <p> <br /></p> <p> <img src="https://img-bss.csdn.net/201904040932114740.png" alt="" /></p> <p> <br /></p> <p> <br /></p> <p> <br /></p> <p> <strong>讲师介绍</strong> </p> <div> <strong><img src="https://img-bss.csdn.net/201904040932449689.jpg" alt="" /><br /></strong> </div>
相关推荐
<p style="box-sizing: border-box; margin: 0px; padding: 0px; font-family: 'PingFang SC', 'Hiragino Sans GB', Arial, 'Microsoft YaHei', Verdana, Roboto, Noto, 'Helvetica Neue', sans-serif; color: #222226; font-size: 14px; background-color: #ffffff;">微服务应用是分布式开发的主要手段,它很好的解决了高并发等电商平台的问题。微服务系列课程是以Java语言为基础,以SpringCloud+SpringBoot为核心,结合Spring、SpringMVC及MyBatis,通过游戏案例、电商案例,以极简的方式,带领入门的朋友们快速上手微服务开发。全部案例源码分享给学习的朋友,案例采用敏捷开发管理模式,让朋友们在每一个阶段,有着游戏过关一样的学习体验。</p> <p style="box-sizing: border-box; margin: 0px; padding: 0px; font-family: 'PingFang SC', 'Hiragino Sans GB', Arial, 'Microsoft YaHei', Verdana, Roboto, Noto, 'Helvetica Neue', sans-serif; color: #222226; font-size: 14px; background-color: #ffffff;"> </p> <p style="box-sizing: border-box; margin: 0px; padding: 0px; font-family: 'PingFang SC', 'Hiragino Sans GB', Arial, 'Microsoft YaHei', Verdana, Roboto, Noto, 'Helvetica Neue', sans-serif; color: #222226; font-size: 14px; background-color: #ffffff;">第七季主要是给大家介绍一下Java面向对象中的继承,包括:继承的概念、为什么要继承、继承的类型及特性、extends关键字、final关键字、implements关键字、super和this关键字、子类中如何调用父类中的有参、无参构造方法。</p>
<p style="font-family: 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial, sans-serif; margin: 0px; padding: 0px; color: #313d54; font-size: 16px; background-color: #ffffff; text-align: center;"> </p> <p style="font-family: 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial, sans-serif; margin: 0px; padding: 0px; color: #313d54; font-size: 16px; background-color: #ffffff;"><img src="https://img-bss.csdnimg.cn/202107031039546001.png" alt="" /></p> <p style="font-family: 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial, sans-serif; margin: 0px; padding: 0px; color: #313d54; font-size: 16px; background-color: #ffffff;"><span style="margin: 0px; padding: 0px; word-break: break-all; overflow-wrap: break-word; overflow: hidden; color: #3d3d3d;">尹成老师,带你步入java 语言的殿堂,讲课生动风趣、深入浅出,全套视频内容充实,整个教程以java语言为核心,完整精彩的演练了数据结构、算法、设计模式、数据库、大数据高并发检索、文件重定向、多线程同步、进程通讯、加密解密,以及各种精彩的小项目等,非常适合大家学习!帮助大家快速入门java语言,一步步的成为java语言高手。</span></p> <p style="font-family: 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial, sans-serif; margin: 0px; padding: 0px; color: #313d54; font-size: 16px; background-color: #ffffff;"><span style="margin: 0px; padding: 0px; word-break: break-all; overflow-wrap: break-word; overflow: hidden; color: #3d3d3d;">清华高手尹成老师、微软全球most 价值专家,帮助你巩固知识点,提高应对面试的能力</span><span style="margin: 0px; padding: 0px; word-break: break-all; overflow-wrap: break-word; overflow: hidden;"><span style="margin: 0px; padding: 0px; color: #3d3d3d;">,为后续课程开发打下极其坚实的基础! </span></span></p> <p style="font-family: 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial, sans-serif; margin: 0px; padding: 0px; color: #313d54; font-size: 16px; background-color: #ffffff;"><img src="https://img-bss.csdnimg.cn/202107031043487823.png" alt="" /></p> <p style="font-family: 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial, sans-serif; margin: 0px; padding: 0px; color: #313d54; font-size: 16px; background-color: #ffffff;">Java大数据处理   </p> <p style="font-family: 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial, sans-serif; margin: 0px; padding: 0px; color: #313d54; font-size: 16px; background-color: #ffffff;"> </p> <p style="font-family: 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial, sans-serif; margin: 0px; padding: 0px; color: #313d54; font-size: 16px; background-color: #ffffff;"><img src="https://img-bss.csdnimg.cn/202107031044147871.png" alt="" /></p> <p style="font-family: 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial, sans-serif; margin: 0px; padding: 0px; color: #313d54; font-size: 16px; background-color: #ffffff;">Java大规模数据预览</p> <p style="font-family: 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial, sans-serif; margin: 0px; padding: 0px; color: #313d54; font-size: 16px; background-color: #ffffff;"><img src="https://img-bss.csdnimg.cn/202107031044264436.png" alt="" /></p> <p style="font-family: 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial, sans-serif; margin: 0px; padding: 0px; color: #313d54; font-size: 16px; background-color: #ffffff;"> </p> <p style="font-family: 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial, sans-serif; margin: 0px; padding: 0px; color: #313d54; font-size: 16px; background-color: #ffffff;">成哥的迷宫就像他的人生,但是编程能力就是迷宫中的任务,只有编程能力提升才能走出迷宫</p> <p style="font-family: 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial, sans-serif; margin: 0px; padding: 0px; color: #313d54; font-size: 16px; background-color: #ffffff;"><img src="https://img-bss.csdnimg.cn/202107031044381527.png" alt="" /></p> <p style="font-family: 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial, sans-serif; margin: 0px; padding: 0px; color: #313d54; font-size: 16px; background-color: #ffffff;"> </p> <p style="font-family: 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial, sans-serif; margin: 0px; padding: 0px; color: #313d54; font-size: 16px; background-color: #ffffff;">密码破解</p> <p style="font-family: 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial, sans-serif; margin: 0px; padding: 0px; color: #313d54; font-size: 16px; background-color: #ffffff;"><img src="https://img-bss.csdnimg.cn/202107031044484462.png" alt="" /></p> <p style="font-family: 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial, sans-serif; margin: 0px; padding: 0px; color: #313d54; font-size: 16px; background-color: #ffffff;"> </p> <p style="font-family: 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial, sans-serif; margin: 0px; padding: 0px; color: #313d54; font-size: 16px; background-color: #ffffff;"><img src="https://img-bss.csdnimg.cn/202107031045012830.png" alt="" /></p> <p style="font-family: 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial, sans-serif; margin: 0px; padding: 0px; color: #313d54; font-size: 16px; background-color: #ffffff;">Java读写文档</p> <p style="font-family: 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial, sans-serif; margin: 0px; padding: 0px; color: #313d54; font-size: 16px; background-color: #ffffff;"> </p> <p style="font-family: 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial, sans-serif; margin: 0px; padding: 0px; color: #313d54; font-size: 16px; background-color: #ffffff;"><img src="https://img-bss.csdnimg.cn/202107031045198471.png" alt="" /></p> <p style="font-family: 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial, sans-serif; margin: 0px; padding: 0px; color: #313d54; font-size: 16px; background-color: #ffffff;">报表统计</p> <p style="font-family: 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial, sans-serif; margin: 0px; padding: 0px; color: #313d54; font-size: 16px; background-color: #ffffff;"><img src="https://img-bss.csdnimg.cn/202107031045411175.png" alt="" /></p> <p style="font-family: 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial, sans-serif; margin: 0px; padding: 0px; color: #313d54; font-size: 16px; background-color: #ffffff;"> </p> <p style="font-family: 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial, sans-serif; margin: 0px; padding: 0px; color: #313d54; font-size: 16px; background-color: #ffffff;"><img src="https://img-bss.csdnimg.cn/202107031045515617.png" alt="" /></p> <p style="font-family: 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial, sans-serif; margin: 0px; padding: 0px; color: #313d54; font-size: 16px; background-color: #ffffff;">Java爬虫系统,成哥的大爱</p> <p style="font-family: 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial, sans-serif; margin: 0px; padding: 0px; color: #313d54; font-size: 16px; background-color: #ffffff;"><img src="https://img-bss.csdnimg.cn/202107031046014776.png" alt="" /></p> <p style="font-family: 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial, sans-serif; margin: 0px; padding: 0px; color: #313d54; font-size: 16px; background-color: #ffffff;"><img src="https://img-bss.csdnimg.cn/202107031046155652.png" alt="" /></p> <p style="font-family: 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial, sans-serif; margin: 0px; padding: 0px; color: #313d54; font-size: 16px; background-color: #ffffff;"> </p> <p style="font-family: 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial, sans-serif; margin: 0px; padding: 0px; color: #313d54; font-size: 16px; background-color: #ffffff;">Java图形化编程</p> <p style="font-family: 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial, sans-serif; margin: 0px; padding: 0px; color: #313d54; font-size: 16px; background-color: #ffffff;"><img src="https://img-bss.csdnimg.cn/202107031047275703.png" alt="" /></p> <p style="font-family: 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial, sans-serif; margin: 0px; padding: 0px; color: #313d54; font-size: 16px; background-color: #ffffff;"> </p> <p style="font-family: 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial, sans-serif; margin: 0px; padding: 0px; color: #313d54; font-size: 16px; background-color: #ffffff;"><span style="font-family: 等线; margin: 0px; padding: 0px; font-size: 14px;">Java控制数据导入O</span><span style="font-family: 等线; margin: 0px; padding: 0px; font-size: 14px;">racle</span><span style="font-family: 等线; margin: 0px; padding: 0px; font-size: 14px;">数据库</span></p> <p style="font-family: 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial, sans-serif; margin: 0px; padding: 0px; color: #313d54; font-size: 16px; background-color: #ffffff;"> </p> <p style="font-family: 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial, sans-serif; margin: 0px; padding: 0px; color: #313d54; font-size: 16px; background-color: #ffffff;"><img src="https://img-bss.csdnimg.cn/202107031047453172.png" alt="" /></p> <p style="font-family: 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial, sans-serif; margin: 0px; padding: 0px; color: #313d54; font-size: 16px; background-color: #ffffff;"> </p> <p style="font-family: 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial, sans-serif; margin: 0px; padding: 0px; color: #313d54; font-size: 16px; background-color: #ffffff;"> </p> <p style="font-family: 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial, sans-serif; margin: 0px; padding: 0px; color: #313d54; font-size: 16px; background-color: #ffffff;"> </p> <p style="font-family: 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial, sans-serif; margin: 0px; padding: 0px; color: #313d54; font-size: 16px; background-color: #ffffff;"> </p> <p style="font-family: 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial, sans-serif; margin: 0px; padding: 0px; color: #313d54; font-size: 16px; background-color: #ffffff;"><span style="font-family: 等线; margin: 0px; padding: 0px; font-size: 14px;">Java高并发内存数据库</span></p> <p style="font-family: 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial, sans-serif; margin: 0px; padding: 0px; color: #313d54; font-size: 16px; background-color: #ffffff;"><img src="https://img-bss.csdnimg.cn/202107031047553826.png" alt="" /></p>
©️2020 CSDN 皮肤主题: 书香水墨 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值