一、背景:
在我们的校园和公共场所,女生卫生间门口排长队的现象十分常见。每次课间休息时,总能看到女同学焦急等待的身影,而男卫生间却经常有空闲的隔间未被使用。这种因性别差异导致的卫生间使用效率不平衡问题,不仅影响了同学们的校园生活体验,更造成了公共资源的浪费。作为一名关注生活细节的七年级学生,我希望通过科技创新来解决这个实际问题。
通过观察发现,传统卫生间的隔间数量是固定不变的。女卫生间在高峰时段容易拥堵,而男卫生间却存在空间闲置。例如,在学校运动会或大型活动时,女生排队等待时间甚至超过10分钟,而同一时间男生卫生间仍有2-3个隔间未被使用。这种资源分配的不合理现象启发了我:如果能实时监测女生排队情况,并在需要时智能调整隔间使用方式,就能让公共设施发挥更大价值。
现有的解决方案多停留在增加卫生间数量或设置“无性别卫生间”层面。前者需要大量空间改造,后者可能引发使用习惯问题。相比之下,动态调整隔间既能保留传统卫生间的分类优势,又能实现资源灵活调配。特别是在中小学这类男女比例均衡的场所,动态系统更具实用价值。
本项目创新性地将AI视觉识别与物联网控制技术结合。利用二哈识图2AI摄像头实时捕捉女卫生间外的人流图像,通过行空板M10进行数据处理,当检测到排队人数超过6人时,系统会自动将男卫生间专门的动态隔间切换为女生专用模式。并配备双门结构:正常状态下男生门保持开启,切换模式后通过舵机控制关闭男生门并开启女生门,同时LED指示灯变换颜色进行指引。这种设计既保证隐私安全,又能实现"空间资源动态再分配"。
选择行空板作为主控设备,是因为其集成了Python编程环境和丰富的传感器接口,适合中学生进行物联网项目开发。二哈识图摄像头具有本地化AI运算能力,能在不依赖网络的情况下准确识别人体轮廓,避免隐私数据传输风险。通过这个项目,我希望探索如何用智能硬件技术解决生活中的实际问题,让科技创新真正服务于校园生活品质的提升。


二、研究目的:
设计这个项目的初衷,就是想用科技创新解决校园里“女生卫生间排队久,男生卫生间有空位”的难题。通过AI和物联网技术,让男士卫生间的部分隔间“活”起来,既帮助同学们节省等待时间,又能提高公共设施的使用效率。具体来说,这个项目希望实现三个重要目标:
第一,让卫生间资源“聪明”分配
传统卫生间的隔间数量是固定不变的,就像教室里的座位一样,不管有没有人用,都只能保持原样。但现实中,女生在课间、午休时常常需要排队,男生卫生间却可能有空位“闲着”。我们的系统就像一位“智能管家”,当二哈识图2AI摄像头发现女生排队超过6人时,立刻“通知”男卫生间里的动态隔间:“现在需要支援!”这时候,挨着女士卫生间的男士隔间外的两扇门会在舵机的控制下自动切换——原本通向男生区域的门关闭,同时开启通往女生区域的门,并亮起指示灯。这样一来,空闲的隔间就能灵活地为女生服务,让每个空间都物尽其用。
第二,用技术保护隐私与安全
有些同学可能会担心:男生突然进入切换模式的隔间怎么办?我们的设计特别考虑到了这一点。动态隔间配备双门结构,切换模式时两侧门锁会同步联动。当隔间转为女生使用时,男生一侧的门会被舵机机械锁死,确保不会误开;女生入口的门只有在系统检测到当前为“切换模式”时才能打开。同时,二哈识图摄像头只在本地处理图像,通过识别人体轮廓计算排队人数,不会拍摄或存储同学们的面部信息,既保护隐私,又避免网络传输的风险。
第三,探索智能校园的更多可能
通过这个项目,我先告诉大家我们也可以用AI和物联网技术解决生活中的真实问题。行空板M10作为主控设备,让我们学会了用Python编程控制传感器和舵机;二哈识图2摄像头的人体识别功能,帮助我们理解AI视觉的工作原理。更重要的是,这个系统可以成为“智能校园”的一个小模块——未来如果加入更多传感器(比如检测隔间使用状态的红外感应),还能优化资源调配的精确度。我们希望通过这次实践,让更多学生看到科技创新的力量:它不仅能解决卫生间排队的问题,还能启发大家用同样的思路优化饮水机排队、图书馆座位预约等校园生活场景。
总之,这个项目不只是为了做一个“会变形的隔间”,更是想用技术搭建一座桥梁,让公共资源分配更公平、更智能,也让我们的校园生活因为科技创新而变得更美好!

三、主要创新点
我们的作品"动态隔间智能卫生间系统",最大的创新在于将AI视觉识别与机械控制技术结合,创造出会"自主思考"的卫生间隔间。这个系统不仅能实时监测人流变化,还能像变形金刚一样改变隔间用途,而其中最核心的技术亮点有两个:动态双门联锁控制技术和本地化AI排队人数识别算法。
核心技术一:动态双门联锁控制(让动态隔间服务两种需求)
传统卫生间因为隐私问题无法相同,但我们的设计突破性地采用"双门双通道"结构。在男士动态隔间区域两侧各有一扇门,分别通向男女卫生间区域,这就像在该区域之间装了一个可以旋转的"传送门"。但要让这个设计真正安全实用,我采用舵机联锁机械结构
当系统处于正常模式时(隔间供男生使用),男生侧的门锁处于“开锁”状态,女生侧门锁由舵机推动卡扣完全锁死;当切换为女生模式时,两个舵机会同步反向转动——男生门锁卡扣弹出锁门,女生门锁则旋转释放。这个过程中,两扇门的锁扣通过齿轮联动,确保永远不会同时解锁。
核心技术二:本地化AI排队人数识别(既聪明又保护隐私)
很多同学担心摄像头会拍到人脸,但我们的系统特别设计了"只数人不拍脸"的AI算法,这是第二个核心技术突破:
1. 轮廓识别代替人脸识别
二哈识图2(HuskyLens)摄像头内置的人体检测模型,就像给电脑戴了一副"模糊眼镜"。它不会看清人的五官,而是通过识别人体轮廓的几何特征来统计人数。我做了30次测试:当使用AI生成5-6个人并排站立时,摄像头识别准确率达90%。
2. 离线运算保障隐私安全
所有图像处理都在二哈识图摄像头内部完成,不需要连接网络或上传数据。行空板M10只会收到“当前排队人数:6人”这样的文字信息,就像收到一条短信,而不会接触任何图像。

四:模型介绍
整体使用废弃的纸板制作,橙色区域为女性卫生间,蓝色区域为男性卫生间,绿色区域动态调整区域,动态调整区域分别由两扇门,蓝色门为男生出入使用,当状态为正常情况下,此门常开,当状态为动态调整时,绿色门关闭,橙色们开启,供排队的女士使用。同时每个门旁有警示灯,当警示灯亮起时,提示此门无法通过。





五:程序截图

六:未来改进方向:
1、在动态调整区域的隔间放置热释电模块,当隔间内用人使用卫生间时,即使厕所外面有超过六人排队或少于六人排队,都无法启动模式改变,避免造成因模式改变过快,造成使用卫生间的人碰到异性而产生的尴尬。
2、增加气体监测模块,实时监测卫生间的异味,并使用风扇将异味排出;
七:对比一代和二代的二哈识图
这个项目我上半年做过,当时用的是一代,识别效果不稳定;现在使用二代后,识别效果稳定了许多,相信未来会有更好的AI传感器,实现更好的识别效果。
# -*- coding: UTF-8 -*-
# MindPlus
# Python
import time
from unihiker import GUI
from unihiker import Audio
from pinpong.board import Board
from pinpong.board import Board,Pin
from pinpong.extension.unihiker import *
from pinpong.libs.microbit_motor import DFServo
from pinpong.board import Board
from dfrobot_huskylensv2 import *
# 自定义函数
def ZhengChangQingKuang():
p_dfr0548_servo_S7.angle(75)
p_dfr0548_servo_S8.angle(10)
p_p13_out.write_digital(1)
p_p14_out.write_digital(0)
def DongTaiQingKuang():
p_dfr0548_servo_S7.angle(25)
p_dfr0548_servo_S8.angle(75)
p_p13_out.write_digital(0)
p_p14_out.write_digital(1)
u_gui=GUI()
u_audio = Audio()
Board().begin()
p_dfr0548_servo_S7 = DFServo(7)
p_dfr0548_servo_S8 = DFServo(8)
Board().begin()
p_p13_out=Pin(Pin.P13, Pin.OUT)
p_p14_out=Pin(Pin.P14, Pin.OUT)
huskylens = HuskylensV2_I2C()
huskylens.knock()
print("1")
huskylens.switchAlgorithm(ALGORITHM_FACE_RECOGNITION)
time.sleep(5)
print("2")
ZhengChangQingKuang()
t1=u_gui.draw_text(text="智能调配厕所系统",x=0,y=0,font_size=20, color="#0000FF")
t2=u_gui.draw_text(text=(str("当前女厕所排队人数:") + str("")),x=0,y=50,font_size=15, color="#0000FF")
t3=u_gui.draw_text(text="",x=0,y=80,font_size=20, color="#0000FF")
while True:
huskylens.getResult(ALGORITHM_FACE_RECOGNITION)
print("3")
JianCeRenShu = (huskylens.getCachedResultNum(ALGORITHM_FACE_RECOGNITION))
if (huskylens.available(ALGORITHM_FACE_RECOGNITION)):
if (JianCeRenShu > 5):
print((str("检测到") + str((str(JianCeRenShu) + str("人")))))
t2.config(text=(str("当前女厕所排队人数:") + str(JianCeRenShu)))
t3.config(text="准备动态调整")
u_audio.play("sos.mp3")
DongTaiQingKuang()
else:
print((str("检测到") + str((str(JianCeRenShu) + str("人")))))
t2.config(text=(str("当前女厕所排队人数:") + str(JianCeRenShu)))
t3.config(text="一切正常")
u_audio.play("usual.mp3")
ZhengChangQingKuang()
time.sleep(3)

返回首页
回到顶部






评论