Базовая система сортировки мусора на основе Raspberry Pi 4b, использующая PyTorch и PyQt5.
Разработана для седьмого конкурса инженерного обучения, заняла первое место в провинции Цзянсу, но не прошла на национальный этап.
Также может быть использована в качестве выпускной работы.
Демонстрационное видео на Bilibili: https://www.bilibili.com/video/BV1kN411o73u
Номер группы для общения:
распущенаМой QQ (Хэ Тяньхуа):
удален(Если вы почти ничего не знаете о Raspberry Pi и Python, пожалуйста, не беспокойте меня, уже слишком много людей добавили меня в QQ и задают глупые вопросы)
(Из-за соотношения цены и производительности, я рекомендую использовать K210 и другие платформы для разработки)
Программная часть: Нанкинский инженерный университет, Колледж автоматизации, Инженерия роботов, 20-й курс, Хэ Тяньхуа (главный разработчик) || Нанкинский инженерный университет, 20-й курс магистратуры, Юэ Цзюнь (со-разработчик)
Механическая структура: Нанкинский инженерный университет, Индустриальный центр, 20-й курс, Чжан И (главный разработчик) || Нанкинский инженерный университет, Колледж машиностроения, 20-й курс, Сю Миньюань (со-разработчик)
Папка data_set
Папка train
Обучающий набор данных модели
Папка val
Валидационный набор данных модели
Папка logs
Используется для хранения логов, создаваемых при выполнении программы. Если она была удалена, её нужно создать вручную.
Папка photo
Используется для хранения фотографий, сделанных при выполнении программы. Если она была удалена, её нужно создать вручную.
Папка tools
model.py
По сути это MobileNet_v2, используемая для вызова при обучении.
predict.py
Программа для тестирования модели.
train.py
Программа для обучения модели.
Папка weight
class_indices.json
Словарь, автоматически создаваемый при обучении модели.
xxx.pth
Обученная модель.
alarm.py
Функция для управления зуммером.
getpic.py
Программа для съёмки обучающих изображений.
main.py
Процесс сортировки мусора. Обратите внимание: запуск этого файла отдельно не создаёт пользовательский интерфейс.
motocontrol.py
Функция для управления сервоприводами.
sensor.py
Функция для чтения данных с ультразвукового датчика.
ui_g.py
Графическая часть UI-файла, преобразованная из UI-файла с помощью PYUIC и затем модифицированная.
Если вы перегенерируете этот файл, удалите последнюю строку кода, автоматически созданную PYQT5, и добавьте необходимые библиотеки.
ui_l.py
Логическая часть UI-файла.
ui.ui
Оригинальный UI-файл.
- Raspberry Pi 4b (используется версия с 4 ГБ оперативной памяти, версия с 2 ГБ также должна подойти)
- Расширительная плата (от YwRobot, 35 юаней, не реклама)
- Сервоприводы x 2 (в нашем устройстве используются два сервопривода, один на 360 градусов и один на 180 градусов, поэтому код написан немного странно)
- Ультразвуковые датчики x 4 (HC-SRO4, четырёхконтактные) (не рекомендуется использовать ультразвуковые датчики из-за их низкой стабильности)
- Дисплей (минимальное разрешение 1024x600, иначе интерфейс программы потребует значительных изменений)
- Переключатели x 6 (три для электрической цепи и три для управления) (большое количество переключателей — идея преподавателя, в дальнейшем оказалось, что это действительно необходимо) (если нет переключателей, нужно отключить режим простоя)
Общая схема подключения
Поле соревнований по инженерному обучению
Внешний вид контейнера для мусора
Изображение из внутренних медиа
Изображение с интервью телеканала
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )