项目进一步简单介绍

本文讲述了作者在大学期间开发的巡线小车项目,涉及电机控制、传感器集成以及单片机STM32F103的应用。同时介绍了用C语言和HAL库开发的员工管理系统,包括功能如用户管理、数据库交互等。还讨论了与HASS和FSMP1A的通信,以及如何通过网页服务器实现远程控制和数据展示的物联网技术应用。
摘要由CSDN通过智能技术生成

巡线小车

这个项目是在大学中的第一个项目我就没有写在简历上。

这个巡线小车,电路上就是两个电机,两组发光二极管和光敏接收器,

还有一个电压比较器,再就是一些电容电阻。

从画原理图到封装pcb最后拿到板子和元器件进行焊接,

烧写程序都是一个人在大学跟着老师一点一点做的

智能小车

这个是一个裸机开发的,单片机程序,用的芯片就是stm32f103芯片。

主要实现的功能就是,红外遥控控制、ps2控制、WiFi、蓝牙控制、超声波跟随、巡线。

地盘是麦轮和阿克曼。

使用标准库开发底层的驱动,编程语言是c语言,使用keil软件编写烧录。

员工管理系统

1.需求分析 
    功能性分析(具体实现的功能):
        管理员:添加用户、删除用户、查询所有用户信息、查询任何用户信息、历史记录
        用  户:查询个人信息、修改密码、修改基本信息、历史记录
    
2.总体分析
    
    用户
    1.注册  2.登录   3.退出
    
    chose 1: 用户名 密码   #注册成功返回(自动分配的)用户工号
    chose 2:  用户名 密码    #登录成功与否
    chose 3:  退出
    
    1.查询信息  2.修改密码  3.修改个人信息  4.查询历史记录  5.退出    
    
    chose 1:姓名:
             年龄:
             性别:
             密码:
             工号:
             工资:
             部门:
        
    chose 2: 旧密码:
             新密码:
             请确认新密码:
    
    chose 3: 您可修改的选项如下:
             姓名:    
             年龄:
             性别:
             
    chose 4:显示本次登录的历史记录
    
    chose 5: 退出
    
    
    管理员
    1.注册  2.登录   3.退出
    
    chose 2:  用户名 密码    #登录成功与否
    chose 3:  退出
    
    1.添加用户      2.删除用户  3.修改用户信息  
    4.查询用户信息  5.查询历史  6.退出    
    
    chose 1:姓名:
             年龄:
             性别:
             密码:
             工号:
             工资:
             部门:
        
    chose 2: 按名字删除
             按工号删除
    
    chose 3: 您可修改的选项如下:
             姓名:
             年龄:
             性别:
             密码:
             工号:
             工资:
             部门:
             
    chose 4:请选择查询方式
                1.所有用户信息
                2.前10个用户
                3.后10个用户
                4.按输入条件查询(1-100)  #前100个用户
    
    chose 5: 请选择查询方式
                1.所有历史记录
                2.后50条历史信息
                3.按输入条件查询(1-100)  #前100条历史信息
                
    chose 6: 退出
    
    
    
    思路: 使用TCP搭建一个服务器    员工的所有信息都在服务器上的数据库中存着  

buff 的第0位判断模式

buff 第1位判断
    1登录 2注册
    3.添加用户      4.删除用户  5.修改用户信息  
    6.查询用户信息  7.查询历史  8.修改密码  9.退出


注册:服务器接收用户名和密码,
      在数据库中插入用户名和密码,将自动生成的工号发给服务器

登录:服务器接收用户名和密码,buff[0] = 1成功
      在数据库中查询,匹配成功表示登录成功

退出:此阶段就在客户端上实现退出,后期有什么想法在改


添加用户:添加成功buff


buff[0] 模式   1  管理员   2  普通用户
buff[1] 选项
buff[3] 成功失败
buff[4] 查询方式
buff[5] 删除方式
buff[6] 客户端的选项
buff[7] 要修改的工号

总结

这个员工管理系统,是跑在我们的开发板子上的,

我们的板子是跑的linux,将编译好的程序通过tftp去下载到板子上
在linux移植好的前提下,还要移植sqlite3轻型数据库
在运行的时候是使用的SecureCRT,进行查看程序执行的状态
没有使用qt去写图形管理界面,而是在虚拟终端上去执行程序,

终端输入字符的方式去一步步执行
在实际工作中,板子到了客户手里,肯定是板子上电,

服务器和客户端自动运行(修改脚本文件)
通过按键去进行操作,所以这个项目还是需要完善

 物联仓储

HASS(终端节点)

比如1号仓库,hass板就相当于是放到仓库的终端节点,

hass板,是华清和阿里合作开发的教育板,是两个a7的核心,和两个m33的核心,

这个板子的上有屏幕按键,灯,还可以外接扩展设备,里边有各种各样的传感器,

比如大气压传感器,温湿度传感器,还有ap3216接近传感器,光照、电子罗盘,

内部集成了WiFi模块,它可以直接无线上网,可以和阿里云直接做通讯,

这个项目中我们把它当作一个终端的节点来用,
这个hass板子使用的是在vscode上安装对应的插件,

hass板子上里边有阿里开发的操作系统,
可以使用python和c去开发,
由于对这个板子不了解,所以就使用的c开发,
直接创建c工程,基于hal层开发,(可以基于组件层开发)

 

FSMP1A(服务器)

HASS和我们的板子可以通过串口进行数据的传输,HASS内部设置的波特率是1500000
HASS和我们的板子也是可以进行网络通信的,因为HASS板内部有WiFi模块,
由于我们的FSMP1A板子是通过网线和Ubuntu进行通信的,如果将开发板的网口和路由器的接口接起来,
此时开发板就可以上网,
还有一种方式就是,将开发板的WiFi驱动移植上去,

需要有一个usb转WiFi的模块插到usb接口上,
当板子可以上网了,他俩就可以进行网络通通信了(socket)
我的这个项目是,开发板和hass板进行串口通信的,

查看客户端给服务器传输数据

给板子移植一个网页服务器,当你点开网页的时候,可以看到服务器实时的数据,

也可以在网页端下发控制的指令
要让开发板提供网页,需要在开发板上跑一个网页服务器,boa,

(在开发板上跑一个boa服务器,当打开网页的时候,boa服务器就会回传一个网页,

也可以通过网页下发指令传给hass板,hass板也可以实时传给网页数据,

也可以将开发板上的摄像头采集的环境信息显示到网页上,拍照、视频)
视频,就要用到视频流服务器,把视频流服务器,

移植到板子上之后,图像最终就可以在网页端去显示

 

现在我们就可以直接控制开发板连接的扩展板去动作(上图没有扩展板的截图),

扩展板有灯、蜂鸣器、风扇、温湿度传感器、AP3216、四位共阴数码管。
当然也可以通过网页端去控制hass板的外设做动作,
底层的设备和上层的网页之间,一个是上传实时的数据,一个是下发控制指令
网页可以使用qt代替我这里没有代替 

进一步升级

实现了上一步的基本功能,编写好驱动,网页和板子,和HASS板打通之后,

配合多线程,TCP/IP实现物联网云系统

  • 29
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: Spring Boot 是一个易于使用、灵活而且可靠的 Java 框架,可用于快速构建高效、可靠、健壮的应用程序。搭建 Spring Boot 项目可以从零开始,使用 Spring Initializr 快速创建,也可以使用一些开源的项目,比如 Spring Boot CLI、Spring Boot Maven 模和 Spring Boot Gradle 模等。 ### 回答2: Spring Boot 是一个快速开发框架,可以帮助开发者快速搭建和部署应用程序。下面是使用 Spring Boot 进行简单项目搭建的步骤: 1. 创建项目:首先,在你选择的集成开发环境(IDE)或命令行中创建一个新的空项目。 2. 配置依赖:在项目的构建工具中(如Maven或Gradle)添加Spring Boot的相关依赖。可以通过在项目的pom.xml(Maven)或build.gradle(Gradle)文件中添加Spring Boot Starter依赖来实现。例如,如果你希望使用Spring MVC框架,则可以添加spring-boot-starter-web依赖。 3. 编写应用程序:在src/main/java目录下创建一个主类,该类将是你的应用程序的入口点。在该类中,你可以添加注解如@SpringBootApplication,用于设置Spring Boot的默认配置。 4. 编写控制器:创建一个Controller类,用于处理HTTP请求。在该类中,可以使用注解如@RestController来标记该类为一个控制器,并编写相应的请求处理方法。 5. 运行应用程序:使用IDE或命令行运行你的应用程序。Spring Boot将为你自动配置服务器并启动应用程序。 以上就是使用Spring Boot进行简单项目搭建的基本步骤。通过使用Spring Boot,开发者可以快速搭建和部署应用程序,并且可以减少繁琐的配置和集成工作。同时,Spring Boot还提供了许多开箱即用的功能和插件,使开发人员能够更加专注于业务逻辑的实现。 ### 回答3: Spring Boot是一种快速构建独立应用程序的框架。它简化了基于Spring框架的项目搭建过程,提供了自动化配置和开箱即用的特性。 要搭建一个简单的Spring Boot项目,需要按照以下步骤操作: 1. 环境准备:确保机器上已经安装了Java和Maven。可以通过在命令行窗口中运行"java -version"和"mvn -v"命令来检查安装情况。 2. 创建项目:在项目的根目录下,可以使用Maven命令或者使用IDE工具创建一个新的Spring Boot项目。使用Maven命令时,执行"mvn archetype:generate"命令并选择合适的Spring Boot模即可。使用IDE工具时,可以直接点击"New Project"并选择Spring Boot项目。 3. 配置项目:根据项目需求,在项目根目录下的"src/main/resources"目录中创建一个名为"application.properties"或者"application.yml"的配置文件。在这个文件中,可以配置一些项目相关的属性例如数据库连接信息、端口号等。 4. 编写代码:创建Java类文件和其他必要的资源文件。可以按照自己的需求定义服务、控制器、数据模型及其他组件。 5. 编译和运行:在项目根目录下执行"mvn clean package"命令编译项目,并执行"java -jar target/xxxx.jar"命令运行项目。其中,xxxx.jar是你的项目名。 6. 测试:使用Postman或者其他HTTP测试工具来验证项目是否正常工作。发送请求并检查响应是否符合预期。 通过上述步骤,就可以成功搭建一个简单的Spring Boot项目。随着对Spring Boot框架的熟悉,可以进一步探索其更多的特性和功能,以满足更复杂的业务需求。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值