Мы в Telegram
Добавить новость

Новости сегодня на DirectAdvert

Новости сегодня от Adwile

Arduino: 2 лабораторные + 1 курсовая

Здравствуйте.

Нужно имитировать контрольую систему, которая смешивает различные ингредиенты в процессе создания продукта. Для этого нужно использовать Arduino и датчики.

Проблема с процессом контроля, в том что нужно будет имитировать качество конечного продукта которое будет зависеть от температуры и интенсивности света, когда он реализуется. И эта сумма из ингредиентов будет зависеть, от индуцированных ошибок измерения различными способами (шум). Например, если вы настроили вашу систему наиспользование 100 мл в качестве ингредиента для рецепта, она будет на самом деле будетдобавлять 102 мл ингредиента из-за ошибки измерения. При этом необходимо изменить "рецепт", в процессе продолжения, чтобы получить конечный продукт хорошего качества. В этом случае, надо добавить 98 мл ингредиентов для того, чтобы получить 100 мл ингредиента в конце.

На следующем рисунке представлен обзор управления, который нужно имитировать. Использовать при написании программы следующие величины:
int mixer(int temperature, int light, int mixspeed, int ingredient1, int ingredient2, int ingredient3)

Входные данные:
int temperature = в градусах цельсия(использовать температурный сенсор)
int light = Интенсивность света в виде целого числа между 0-1023. (использовать датчик света)
int speed = Скорость с которой ингредиенты смешиваются в виде целого числа между 0-1023 (использовать потенциометр)
int ingredient1 = Количество ингредиента 1 (только запрограммированного значения)
int ingredient2 = Количество Ингредиента 2 (запрограммированное значение)
int ingredient3 = Количество Ингредиента 3 (запрограммированное значение)

Внутри этой функции, выполнить
следующие действия:

* Ошибка измерения применяется ко всем входным параметрам

* Качество вычисляется к оптимальной формуле, после того, как были смешаны, с
ошибк
ой
измерения.

* Генерируются выходные значения и возвращае
тся качество продукта.

Выходные данные:
quality =
Качество как значение между 0-100.
outputTemperature =измеренная температура (в том числе ошибки измерения)
outputLight = измеренная интенсивность света (включая ошибки измерения.
outputMixspeed = измеренная скорость смесителя (в том числе ошибок измерения)
outputIngredient1 = измеренное количество ингредиента 1 (в том числе погрешности измерений)
outputIngredient2 = измеренное количество ингредиента 2 (в том числе погрешности измерений).
outputIngredient3 = измеренное количество ингредиента 3 (в том числе погрешности измерений).


Расчет качества
Чтобы выяснить, качество конечного продукта,
нужно
выяснить,
на
сколько
величины
отличаются от оптимальн
ых
.
Например,
если
н
аша температура путем измерения ошибки различ
ается

на
-3 градусов от рецепта, свет отличается
на
+30 единиц, скорость
на
-7 единиц, ingrediens1
на
+2
мл
, ingrediens2
на
-3
мл
и наконец ingrediens3
на
+1
мл
. Таким образом, вы можете
оце
нить качество конечного
продукта
путем принятия 100 (символизирующий 100% хорошее качество) минус абсолютное значение всех ошибок:

100 - | -3 | - | +30 | - | -7 | - | + 2 | - | -3 | - [+1] = 100 - 3-30 - 7 - 2 - 3 - 1 = 54

Таким образом, в результате чего получается 54% качества. При отрицательном качеств
е
, получается 0%. Помните также, что датчик очень чувствителен, так что, вероятно
это
да
е
т основной вклад в качество,
которо
уменьшается, если использ
овать
этот способ расчета качества.

Наконец, качество должно отображаться с помощью светодиодов.
Например, в качестве показателя, где каждый светодиод символизирует выбор качества 20%. Т.е.при уровне
качеств
а
конечного продукта

в
54: первый светодиод (> 0%), второй светодиод (> 20%) и трет
ий
(LED> 40%). Но не последние два светодиода.


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

Задание.
З
адача заключается в программировании системы управления. Поскольку все ингредиенты и датчики имеют погрешность измерения, необходимо компенсирова
ть

их
в системе управления.

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

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

* Установите pinModes

* Читать датчик температуры, в градусах Цельсия

* Чтение Датчик света 0-1013

* Чтение потенциометра 0-1023

* Включите светодиоды по качеству

* Настройте значения Ингредиенты вход в соответствии с их выходных значений

void setup() {
Serial.begin(9600);

//TODO Set your pinModes
}

//Input Variables
int inputTemperature;
int inputLight;
int inputMixspeed;
int inputIngredient1 = 50;
int inputIngredient2 = 40;
int inputIngredient3 = 60;

//Output Variables
int outputTemperature;
int outputLight;
int outputMixspeed;
int outputIngredient1;
int outputIngredient2;
int outputIngredient3;

void loop() {

inputTemperature = 0; //TODO Read temperature sensor in degrees celsius
inputLight = 0; //TODO Read light sensor 0-1013
inputMixspeed = 0; //TODO Read potentiometer 0-1023

int quality = mixer(inputTemperature, inputLight, inputMixspeed, inputIngredient1, inputIngredient2, inputIngredient3);
Serial.println("******");
Serial.print("Quality: ");
Serial.println(quality);
Serial.print("Temperature: ");
Serial.println(outputTemperature);
Serial.print("Light: ");
Serial.println(outputLight);
Serial.print("Mixspeed: ");
Serial.println(outputMixspeed);
Serial.print("Ingredient 1: ");
Serial.println(outputIngredient1);
Serial.print("Ingredient 2: ");
Serial.println(outputIngredient2);
Serial.print("Ingredient 3: ");
Serial.println(outputIngredient3);
Serial.println("******");


//TODO Turn on LEDs according to quality


//TODO Adjust your ingredients input values according to their output values


delay (3000);
}


int mixer(int temperature, int light, int mixspeed, int ingredient1, int ingredient2, int ingredient3){

int mixerNoise = noise();
int mixerTemperature = temperature + mixerNoise;
int mixerLight = light + mixerNoise;
int mixerMixspeed = mixspeed + mixerNoise;
int mixerIngredient1 = ingredient1 + mixerNoise;
int mixerIngredient2 = ingredient2 + mixerNoise;
int mixerIngredient3 = ingredient3 + mixerNoise;

int quality = 100 - abs(25-mixerTemperature) - abs(900-mixerLight) - abs(512-mixerMixspeed) - abs(50-mixerIngredient1) - abs(40-mixerIngredient2) - abs(60-mixerIngredient3);
if(quality < 0){
quality = 0;
}

outputTemperature = mixerTemperature;
outputLight = mixerLight;
outputMixspeed = mixerMixspeed;
outputIngredient1 = mixerIngredient1;
outputIngredient2 = mixerIngredient2;
outputIngredient3 = mixerIngredient3;
return quality;
}

int savedNoise = 0;
int noise(){
if(savedNoise < -5){
savedNoise++;
} else if(savedNoise > 5){
savedNoise--;
} else {
savedNoise = savedNoise + random(3) - 1;
}
return savedNoise;
}


Лаба 1
Нужно
преобразовать десятичное значение входного сигнала для двоичного значения и показать двоичного числа в качестве вывода.


Десятичные числа которые находятся между 0 и 1023, будут загружены с помощью потенциометра, подключенного к Arduino.
Как выход вы должны зажечь количество светодиодных ламп, которые символизируют отдельные цифры подряд. Вы можете рассчитать самостоятельно, сколько LED / шт вам нужно.
Также выписать как десятичные значения,так и двоичные числа на консоль компьютера ( т.е.дважды проверить вашу систему). Основной костяк я умудрился сделать, но с показом на лампочках каждого числа, не получается.


Лаба 2

Вы должны создать систему управления с 4 кнопками и 4 светодиодными лампами. Где логика вашего контроля должен быть запрограммирован следующим образом:




LED 1 будет мигать каждые три секунды (3 секунды, затем на три секунды от этих трех секунд, и т.д ...)
LED 2 мигает каждые пять секунд (5 секунд, затем на 5 секунд от этих 5 секунд, и т.д ...)
LED 3 выключен.
LED 4 светится.


Логика:
Кнопка 1 выключает светодиод 4 и он продолжает находиться в в положении выключено..
Пока тех пор пока кнопка 2 нажата, LED 1 и LED 2 перестают мигать и остаются в положении выключено.
Кнопка 3 зажигает LED 4 заново, и он остается в положении включено.
Пока кнопка 4 нажата, светодиод начинает мигать каждые 2 секунды. (т.е.1 секунду светится, 1 секунду выключен, 1 секунду светится, 1 секунду выключен и т.д ...)
До тех пор пока обе кнопки 1 и 3 находятся в нажатом состоянии , LED 3 должен гореть, а LED 4 должен быть выключен, в противном случае светодиод 3 будет потушен.
Если все кнопки нажать одновременно, то все светодиоды должны начать светиться до тех пор, пока все кнопки не отжать, независимо от другой логики.
Если нажата несколько кнопок, то их индивидуальные параметры должны быть реализованы.
Надо избегать использования delay(), потому что это делает систему медленной.
Установить частоту мигания, можно задавая время которое находится в Millis ().



Сроки написания работ:
в течении недели.
некоторые пояснения и рекомендации к работе с ингридиентами



1. Поскольку это проект, то можно, расширить нашу систему, для того чтобы иметь возможность получить систему более высокого класса. Эта часть важна. Некоторые примеры дополнительных расширений, которые вы можете сделать, это:

* Замена функции шума в более реалистичной модели.


* Добавление дополнительных ингредиентов для вашей системы, вы можете использовать для этого кнопки.


* Создание более реального сценария для нашей системы, какие ингредиенты на самом деле можно смешивать?


* Визуальное отображение с использованием LED, для того чтобы показать, как хорошо температуры, света, и скорость смешивания работают по сравнению с начальным рецептом.


* Создать лучшую модель для рассчета качества конечного продукта.




Я хочу, чтобы вы предоставили полный исходный код для нашего проекта.
Отчет о том, как вы построили вашу программу и как она работает.
Включить 2-3 фотографии иллюстрирующие плату Arduino с установленными на ней ел.деталями, (т.е. как выглядит панель с электронными деталями, когда вы запустите программу).


Отчет должен содержать следующие элементы:


Название страницы.
Введение.
Отчет, как вы построили и запрограммировать систему?
Результаты: каков итог? Насколько хорошо работает наша система?
Выводы: достигли ли мы свою цель?
Список использованной литературы.
Это относиться к упражнению со смешиванием ингридиентов.



Для двух других упражнений нужен только код и 2-3 фотографии иллюстрирующие плату Arduino с установленными на ней ел.деталями




С уважением,
Константин

Читайте на 123ru.net

Другие проекты от 123ru.net



Архангельск

Прокуратура Архангельской области и Ненецкого автономного округа 31 мая 2024 года в г. Нарьян-Мар проведет прием граждан и «Горячую линию» по вопросам защиты прав и законных интересов несовершеннолетних



Мир

Пять морей и одно озеро: в России создадут новые круглогодичные курорты - стали известны подробности




Українські новини

ОіБ - охорона і безпека: замовляй охорону в Харькові



Новости 24 часа

Выгодно ли покупать квартиру в новостройке?



Game News

Supercell выпустил игру Squad Busters на смартфоны



Москва

«СВЯТОЙ ЛЕНИН» легально изготавливает армии и спецслужбы. 6 серия. СЕРЬЁЗНЫЙ НОВОСТНОЙ СЕРИАЛ.



News Every Day

‘Please don’t play that at matches next season’, beg Luton fans after Coldplay reveal new song for Hatters at festival



Настроение

Жулан.



Москва

На Западе раскрыли, для чего США отправили своих военных советников в Минобороны Армении



Андрей Макаревич

Андрей Макаревич лишился бизнес-партнера



Москва

ТУСУР: драйвером кластера микроэлектроники станет центр в ОЭЗ "Томск"



Елена Рыбакина

Рыбакина, Путинцева и Бублик стартуют на Ролан Гаррос. Кто в соперниках и чего ждать?



Москва

VK Fest 2024: Музыка и Развлечения на Открытых Площадках России



Дарья Донцова

Олег Рой и Дарья Донцова высказались о необходимости масштабирования опыта Башкортостана в проведении книжных фестивалей



Симферополь

Портативный сканер штрих-кодов Heroje H133U на базе CMOS-матрицы



Москва

Стоматолог Владимир Лосев: сколько времени нужно носить брекеты



Москва

Собянин: 10 тыс. человек получили медпомощь в обновленных приемных отделениях



Москва

«СВЯТОЙ ЛЕНИН» легально изготавливает армии и спецслужбы. 6 серия. СЕРЬЁЗНЫЙ НОВОСТНОЙ СЕРИАЛ.



103news.com — быстрее, чем Я..., самые свежие и актуальные новости Вашего города — каждый день, каждый час с ежеминутным обновлением! Мгновенная публикация на языке оригинала, без модерации и без купюр в разделе Пользователи сайта 103news.com.

Как добавить свои новости в наши трансляции? Очень просто. Достаточно отправить заявку на наш электронный адрес mail@29ru.net с указанием адреса Вашей ленты новостей в формате RSS или подать заявку на включение Вашего сайта в наш каталог через форму. После модерации заявки в течении 24 часов Ваша лента новостей начнёт транслироваться в разделе Вашего города. Все новости в нашей ленте новостей отсортированы поминутно по времени публикации, которое указано напротив каждой новости справа также как и прямая ссылка на источник информации. Если у Вас есть интересные фото Вашего города или других населённых пунктов Вашего региона мы также готовы опубликовать их в разделе Вашего города в нашем каталоге региональных сайтов, который на сегодняшний день является самым большим региональным ресурсом, охватывающим все города не только России и Украины, но ещё и Белоруссии и Абхазии. Прислать фото можно здесь. Оперативно разместить свою новость в Вашем городе можно самостоятельно через форму.

Другие популярные новости дня сегодня


Новости 24/7 Все города России





Топ 10 новостей последнего часа




Новости России

Последний секрет. Пять знаменитостей, чьи могилы были утрачены

"СВЯТОЙ ЛЕНИН" раскрыл загадку В.В. Жириновского и В.Г. Мессинга. СЕНСАЦИОННЫЕ ДАННЫЕ!

Сергей Собянин: фонд музея "Царицыно" собрал 61 тыс. произведений искусства

Вновь в строю: пожарная служба столицы отмечает юбилей


Москва

Доктор Кутушов назвал болезни, которые поджидают отдыхающих у водоёмов






Rss.plus

Выгодно ли покупать квартиру в новостройке?

Компания ICDMC приняла участие в торжественном открытии выставки “Тульское качество”

Команда Центрального округа Росгвардии стала призером на чемпионате по пожарно-спасательному спорту в Москве (видео)

Доктор Кутушов назвал болезни, которые поджидают отдыхающих у водоёмов

Moscow.media
Москва

Пожарной охране Москвы исполнилось 220 лет — Сергей Собянин



103news.comмеждународная интерактивная информационная сеть (ежеминутные новости с ежедневным интелектуальным архивом). Только у нас — все главные новости дня без политической цензуры. "103 Новости" — абсолютно все точки зрения, трезвая аналитика, цивилизованные споры и обсуждения без взаимных обвинений и оскорблений. Помните, что не у всех точка зрения совпадает с Вашей. Уважайте мнение других, даже если Вы отстаиваете свой взгляд и свою позицию. 103news.com — облегчённая версия старейшего обозревателя новостей 123ru.net.

Мы не навязываем Вам своё видение, мы даём Вам объективный срез событий дня без цензуры и без купюр. Новости, какие они есть — онлайн (с поминутным архивом по всем городам и регионам России, Украины, Белоруссии и Абхазии).

103news.com — живые новости в прямом эфире!

В любую минуту Вы можете добавить свою новость мгновенно — здесь.

Музыкальные новости

Игорь Бутман

Трансляцию концертов оркестра Бутмана в Китае посмотрели более 50 млн человек




Спорт в России и мире

Алексей Смирнов – актер, которого, надеюсь, еще не забыли

VK Fest 2024: Музыка и Развлечения на Открытых Площадках России

Команда Центрального округа Росгвардии стала призером на чемпионате по пожарно-спасательному спорту в Москве (видео)

Больше всего работников с креативными идеями работает в ритейле и спорте


Елена Рыбакина

Рыбакина, Путинцева и Бублик стартуют на Ролан Гаррос. Кто в соперниках и чего ждать?



Новости Крыма на Sevpoisk.ru


Новости 24 часа

Команда Центрального округа Росгвардии стала призером на чемпионате по пожарно-спасательному спорту в Москве (видео)



Частные объявления в Вашем городе, в Вашем регионе и в России