Ничего не найдено :(
    В гостях у Самоделкина! » Электроника » Arduino » Устройство определения спелости овощей и фруктов по их цвету

    Устройство определения спелости овощей и фруктов по их цвету


    Это устройство предназначено для определения спелости овощей и фруктов путем сопоставления данных спектрального анализа с заранее установленными шаблонами.

    Такой анализатор, с некоторыми доработками, можно использовать, например, в фермерском хозяйстве.

    Инструменты и материалы:
    - Arduino Nano;
    -Спектральный датчик AS7341 или такой;
    -Raspberry Pi 3B + или 4;
    -10K потенциометр;
    -Ручка потенциометра;
    -Тактильная кнопка - 4 шт;
    -5 мм светодиод зеленый;
    -5 мм светодиод красный;
    -Макетная плата;

    Шаг первый: теория
    Благодаря развитому зрению человека, нам не составляет труда определить спелость по внешнему виду фрукта или овоща. Однако, при массовом выращивании контроль за созреванием и последующая сортировка спелых овощей/фруктов от неспелых, без автоматизации, довольно трудозатратен.

    Это устройство мастер решил сделать для помощи пищевым компаниям, продуктовым магазинам и фермерам в сортировке фруктов и овощей. С помощью него можно определять стадии созревания по цвету с помощью модели нейронной сети.
    По мере созревания фруктов и овощей они меняют цвет из-за четырех групп класса пигментов:
    хлорофилл (зеленый)
    каротиноиды (желтый, красный, оранжевый)
    флавоноиды: антоцианы + антоксантины (красный, синий, фиолетовый)
    беталаины (красный, желтый, фиолетовый)

    Эти пигменты представляют собой группы молекулярных структур, поглощающих определенный набор длин волн и отражающих остальные. Незрелые плоды (зеленые) из-за хлорофилла в их клетках. По мере созревания хлорофилл распадается и заменяется оранжевыми каротиноидами и красными антоцианами. Эти соединения являются антиоксидантами, которые не позволяют фруктам слишком быстро портиться на воздухе. Затем происходит ферментативное потемнение и обесцвечивание - становление коричневого цвета. Ферменты действуют как катализатор химических реакций, вызывающих обесцвечивание фенолов.

    Проведя некоторое исследование процессов изменения цвета по мере созревания фруктов и овощей, мастер решил построить искусственную нейронную сеть (ИНС) для интерпретации спектрального цвета различных фруктов и овощей и прогнозирования стадий созревания.
    Перед построением и тестированием данной модели нейронной сети он разработал веб-приложение для сопоставления данных спектрального цвета фруктов и овощей, сгенерированных датчиком видимого света AS7341. Мастер использовал Arduino Nano для отправки данных, созданных датчиком видимого света, в веб-приложение. Основываясь на своих наблюдениях, он назначил стадию созревания (метку) при получении данных спектрального цвета для каждого фрукта и овоща:
    Раннеспелые
    Частично спелые
    Спелые
    Переспевшие


    Шаг второй: разработка веб-приложения
    Мастер разработал веб-приложение (Vegetables and Fruits Data Logger) для получения данных о спектральном цвете фруктов и овощей от датчика AS7341 через Arduino Nano 33 IoT и установки этих данных в файл CSV (spectral_color_database.csv) для создания таблицы о стадиях.
    Веб-приложение включает в себя один файл (index.php) и требует, чтобы эти параметры вставляли новую строку (запись) в набор данных:
    F1
    F2
    F3
    F4
    F5
    F6
    F7
    F8
    nir_1
    nir_2
    class

    Дальше нужно проверить, все ли необходимые параметры передаются Nano.
    Если да, создаем массив данных с полученными параметрами, включая текущую дату.
    Вставляем недавно созданный массив данных в файл spectral_color_database.csv как новую строку с помощью функции fputcsv.
    Затем прописываем: Data Inserted Successfully!
    Если есть пропуски или нет входящих данных, прописываем: Waiting for data from the AS7341 sensor to insert

    Шаг третий: настройка веб-приложения на Raspberry Pi
    После создания веб-приложения нужно запустить его на Raspberry Pi или любом другом сервере, если это сервер PHP.
    Для настройки Raspberry Pi выполняем следующие действия:
    Прежде всего, извлекаем папку Vegetables_and_Fruits_Data_Logger.zip.
    Затем перемещаем папку приложения (Vegetables_and_Fruits_Data_Logger) на сервер apache (/ var / www / html).
    sudo mv /home/pi/Downloads/Vegetables_and_Fruits_Data_Logger/ /var/www/html/

    Если требуемые параметры не установлены и не найдены, веб-приложение пропишет: Waiting for data from the AS7341 sensor to insert...(Ожидание данных от датчика AS7341 для вставки )
    http: // localhost / Vegetables_and_Fruits_Data_Logger /

    В противном случае веб-приложение вставляет входящие данные в виде новой строки в файл CSV (набор данных), добавляя текущую дату, и печатает: Data Inserted Successfully! (Данные успешно вставлены!)
    http://localhost/Vegetables_and_Fruits_Data_Logger/?F1=13&F2=12&F3=12&F4=12&F5=12&F6=12&F7=12&F8=12&nir_1=12&nir_2=9&class=0





    Шаг четвертый: настройка Arduino Nano
    Дальше нужно загрузить необходимые драйверы - Arduino SAMD Core - как описано в этом руководстве.
    Чтобы иметь возможность подключиться к Wi-Fi, нужно загрузить библиотеку WiFiNINA.


    Чтобы иметь возможность получать данные о цвете от датчика AS7341 необходимо установить библиотеку DFRobot AS7341.
    Дальше нужно включить необходимые библиотеки и определить настройки WiFi.
    char ssid[] = "SSID";        // your network SSID (name)
    char pass[] = "PASSWORD";    // your network password (use for WPA, or use as key for WEP)
    int keyIndex = 0;            // your network key Index number (needed only for WEP)
    int status = WL_IDLE_STATUS;
    
    // Enter the IPAddress of your Raspberry Pi.
    IPAddress server(192, 168, 1, 20);
    
    // Initialize the Ethernet client library
    WiFiClient client; /* WiFiSSLClient client; */

    Определить настройки и объекты датчика видимого света AS7341
    // Define the AS7341 object.
    DFRobot_AS7341 as7341;
    // Define AS7341 data objects:
    DFRobot_AS7341::sModeOneData_t data1;
    DFRobot_AS7341::sModeTwoData_t data2;
    [/spoiler]
    Определить может ли I2C правильно обмениваться данными, и включить встроенный светодиод на датчике AS7341.

    Теперь нужно установить метку/номер каждому классу:
    0 - Раннеспелый
    1 - Частично спелый
    2 - Спелый
    3 - Переспелый

    Подключаемся к приложению, устанавливаем метки зрелости и подключаем красный светодиод.




    Шаг пятый: создание набора данных стадий созревания на основе спектрального цвета
    Чтобы обучить данную модель нейронной сети стадиям созревания по спектральному цвету, нужно было собрать данные о спектральном цвете различных фруктов и овощей. Для этого мастер использует датчик AS7341.

    В этом датчике используется микросхема спектрального датчика нового поколения AS7341, выпущенная известной компанией AMS. Он имеет восемь каналов для видимого света, один канал для ближнего ИК-диапазона (NIR), один канал без фильтра (Clear) и дополнительный канал, распределенный по мерцанию окружающего света (Flicker). Кроме того, он имеет шесть параллельных 16-битных каналов АЦП для обработки сигналов и данных. Благодаря двум встроенным светодиодам с регулируемой яркостью он может собирать данные даже в темноте.
    Проведя ряд исследований, мастер собрал параметры ниже с помощью датчика видимого света AS7341:
    F1 (405-425nm)
    F2 (435-455nm)
    F3 (470-490nm)
    F4 (505-525nm)
    F5 (545-565nm)
    F6 (580-600nm)
    F7 (620-640nm)
    F8 (670-690nm)
    Clear_1
    NIR_1
    Clear_2
    NIR_2
    Как объяснялось в предыдущем шаге, мастер подключил датчик AS7341 к Arduino Nano 33 IoT для отправки параметров и назначенных меток стадии созревания в веб-приложение. После получения данных веб-приложение вставляет необходимые параметры, добавляя параметр текущей даты, в файл spectral_color_database.csv (набор данных) под этими строками:
    F1
    F2
    F3
    F4
    F5
    F6
    F7
    F8
    NIR_1
    NIR_2
    Ripeness
    Date
    После завершения программирования и сборки устройства он выбрал одиннадцать разных фруктов и овощей, чтобы собрать их классы спелости по спектральному цвету.
    Устройство позволяет пользователю отправлять данные в веб-приложение и назначать класс (метку) спелости, нажимая одну из четырех кнопок классов:
    0 - Раннеспелый
    1 - Частично спелый
    2 - Спелый
    3 - Переспелый
    Для каждого фрукта и овоща он сопоставлял спектральные данные о цвете и присвоенный класс спелости в течение десяти дней, три раза в день.
    Устройство позволяет пользователю регулировать яркость встроенного светодиода на датчике AS7341 с помощью потенциометра.
    Если переданные данные успешно вставлены в набор данных, на устройстве загорится зеленый светодиод. В противном случае загорится красный светодиод.
    Наконец, после сбора классов спелости по спектральному цвету три раза в день в течение десяти дней он извлек набор данных (spectral_color_database.csv) для обучения нейронной сети.





    Шаг шестой: создание искусственной нейронной сети (ИНС) с помощью TensorFlow
    Дальше мастер создает и обучает нейронную сеть для данного устройства. Ее цель - научить устройство не только определять спелость,но и прогнозировать стадии созревания. Подробно о данном шаге можно ознакомиться здесь.
    Полностью код можно скачать здесь.
    Устройство определения спелости овощей и фруктов по их цвету

    Шаг седьмой: подключение и регулировка
    Сначала мастер устанавливает на макетную плату Arduino Nano 33 IoT. Затем устанавливает четыре кнопки классов, чтобы назначить класс зрелости (Early Ripe, Parically Ripe, Ripe, Decay) при отправке данных в веб-приложение. Мастер использовал потенциометр, чтобы отрегулировать яркость встроенного светодиода на датчике AS7341. Наконец, он установил 5-миллиметровые зеленые и красные светодиоды.
    Схема подключения следующая:




    Собрав схему, он установил макетную плату и датчик AS7341 на старой книжной полке с помощью клеевого пистолета.


    Устройство собрано и готово к тестированию.


    Источник (Source)
    Становитесь автором сайта, публикуйте собственные статьи, описания самоделок с оплатой за текст. Подробнее здесь.
    Подборки: Raspberry Pi Arduino Датчик

    Магнитная левитация с помощью катушки соленоида

    Глобус синхронизированный с виртуальным глобусом на экране ПК

    0
    Идея
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    0
    Описание
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    0
    Исполнение
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    Итоговая оценка: 0.0 из 10 (голосов: 0 / История оценок)

    Добавить комментарий

    1 комментарий
    Korolev

    По мере созревания фруктов и овощей они меняют цвет из-за четырех групп класса пигментов:

    Вообще-то изменение пигментации не является определяющим фактором созревания. Кроме изменения пигментации происходят изменения ещё и нескольких других параметров, например содержание влаги и концентрация сухих веществ, а также сахаров, органических кислот, минеральных солей, каротиноидов, растворимых углеводов — фруктозы, глюкозы, сахарозы  и т.д. и т.п.

    Это устройство мастер решил сделать для помощи пищевым компаниям

    Вообще-то пищевые компании используют более серьёзное, сертифицированное оборудование, как правило адаптированное для конкретных сортов продукции.

    Такой анализатор, с некоторыми доработками, можно использовать, например, в фермерском хозяйстве.

    Слишком низкая производительность, долго "думает"! smile 

    Привет, Гость!


    Зарегистрируйтесь

    Или войдите на сайт, если уже зарегистрированы...

    Войти

    Добавьте самоделку

    Добавьте тему

    Онлайн чат

    Последние комментарии

    Все комментарии