Roast Meter – Колориметр для кави своїми руками​

roastmetersample.jpg

Передумова​

Як і у більшості домашніх обсмажчиків кави готовність викласти 1.5к доларів за комерційний «недорогий» колориметр, чи навіть 800-900 за пристрій для домашніх обсмажчиків (типу Tonino) у мене так і не наступила. За моїми спостереженнями, чимало ростерень, що обсмажують каву на продаж, колориметрів не мають. Разом з тим, як каже пан Мортен Мюнхов (Morten Münchow), добре знаний любителям наукового підходу до обсмажування кави, “The key parameter for consistency is flavour, which is 80% driven by variation in colour and 20% driven by variation in timing”. Тобто, 80% вашого результату обсмажування це те, який колір буде у зерна в результаті. Звісно, це певна умовність, ви можете отримати різний смак при однаковому кольорі. Але, при ряді фіксованих змінних, колір це король консистенції букету вашої кави. І якщо вам потрібно повторити смако-ароматичний профіль, то саме колір при збереженні загальних параметрів та форми профілю, буде вашим мірилом для об’єктивного контролю результату. Звісно це не про смак як такий, бо смак з однієї сторони це найважливіший параметр, але він не є достатньо об’єктивним для системного контролю.

Для вимірювання кольору обсмаженого зерна, використовують колориметри. Колориметр - це прилад, який випромінює світло на зразок (у нашому випадку кави), і вимірює енергію відбитого світла за допомогою фотоелементів, чутливих до певної смуги пропускання.

До появи вимірювачів кольору ступінь обсмажування позначали такими термінами, як "французький", "турецький", "темний", "повний міський", "міський", "світлий", "американський" і "коричний". Як і у випадку з показниками кольору обсмажування, про які повідомляє вимірювач кольору обсмажування, ці терміни не є чітко визначеними та/або їхнє визначення, яке варіюється від регіону до регіону, частково ґрунтується на історичній плутанині.

Замість того, щоб використовувати вимірювач кольору, можна візуально порівняти обсмажену каву зі зразками, що були обсмажені раніше, або з надрукованими кольоровими плитками. Однак, скажу я вам, це ще той підхід. Надрукувати плитки з чітким кольором дуже не просто, вони брудняться та вицвітають. А використовувати раніше обсмажене зерно для вимірювання кольору практично беззмістовно. З часом воно змінює колір і це проблема. Вимірювати колір потрібно у той же самий час після обсмажування. І не забувайте, що вам треба змолоти зерно, бо, у готовій партії будуть зерна різного кольору, особливо, якщо у вас зерно натуральної чи анаеробної обробки. Якщо ви мелєте ваше зерно, і оціните його кілька разів з використанням колориметру, ви отримаєте консистентний результат.

В пошуках еталону​

Пару місяців до написання даної статті я задумався над тим, а чи можна зробити подібний пристрій самостійно, використовуючи недорогі електронні компоненти. Також була ідея використовувати звичайну високоякісну камеру при правильно сформованому освітленні і аналізувати програмно варіант. Тривалі пошуки практично ні до чого не призвели, за виключенням кількох напівмертвих проектів, які підтверджували, що справа проблематична.

Зовсім випадково, читаючи форум спільноти користувачів Kaffelogic, який я вважаю чи не найкращим пристроєм для обсмажування кави в домашніх умовах, я побачив обговорення створення колориметру. Врешті в спільноті народився продукт з відкритим кодом та ліцензією GNU GPL v3. Що дозволяє користуватися напрацюваннями спільноти, з обов’язковим посиланням на проект. Посилання на GitHub та сторінку спільноти Kaffelogic, я приводжу в кінці статті.

Робимо власними руками​

Забігаючи на перед скажу, що для тих хто має паяльник, 3D принтер та певний досвід роботи з Arduino зробити проект за інструкціями не складе особливих труднощів. Але, при відсутності потрібних елементів, треба буде трошки постраждати, шукаючи все окремо, включаючи болтики потрібної форми та довжини. Отже поїхали. Спершу звісно треба закупитися електронікою та іншими компонентами.

Значна частина даної публікації базується на документації проекту з моїми власними коментарями та поправками.

Ціль проекту Roast Meter​

  • Проект Roast Meter було започатковано для того, щоб споживачі/покупці кави та домашні обсмажчики могли оцінювати колір кави для контролю якості.
  • Roast Meter за ціною подібний до вартості професійних кольорових карток (хоча звісно вони можуть коштувати і дешевше). Врешті, наявність інструменту, який достатньо стабільно вимірює колір обсмаженого зерна значно спрощує процес контролю та обмін інформацією.

Обмеження​

Хоча Roast Meter дозволяє досягнути доволі гарного узгодження з референтними лабораторними пристроями, метою проекту не є заміна високопрофесійного обладнання комерційного лабораторного класу. Метою проекту не є заміна пристроїв типу LightTells, Agtron чи Roastrite. Ви не отримаєте ніякої гарантії від творців проекту чи виробників пристрою на точність та відповідність референтним стандартам. Це не лабораторний пристрій за визначенням. Однак, в разі відсутності лабораторного сертифікованого і каліброваного пристрою, Roast Meter забезпечить вам можливість вимірювати колір обсмажених зразків кави та порівнювати їх між собою. В принципі пристрій забезпечує результат близький до LightTells CM100, але без гарантій виробника.

Перелік запчастин та матеріалів.​

Також потрібно мати наступне програмне забезпечення. Воно є публічно доступним, отже його можна скачати з інтернету не порушуючи ліцензії.
Замість Arduino IDE звісно можна використовувати будь-який інший інструментарій, питання в тому лише щоб прошити вже готовим ПЗ ваші залізки. Я особисто користуюсь PlatformIO (https://platformio.org/?utm_source=platformio&utm_medium=piohome), воно якесь більш людяне. Доречі, PlatformIO – це український проект. При цьому напевно один з найкращих інструментів для роботи з вбудованою електронікою. Але, якщо у вас немає досвіду роботи з електронікою, і при цьому ви врешті вирішили самостійно спробувати зробити даний проект, то Arduino IDE буде як раз в міру.

Ще потрібно трошки різноманітного дріб’язку, ось такого:
  • Лабораторні скельця, 1мм товщини і 25.4мм ширини
  • 4 болтики M3 x 16мм
  • 8 болтиків M3 x 4мм
  • Супер клей
  • Батарейка LiPo з JST конектором за розміром десь 35 x 25мм
  • 5мм вимикач
  • 2 болтики M2 x 2мм
  • дроти
І очевидно, вам знадобляться наступні інструменти:
  • Ніж для скла
  • Інструменти механічні: відкрутки, кусачки тощо
  • Набір для пайки

3D друк корпуса​

Для друку підійде 3Д принтер практично будь-якого типу (FDM цілком достатньо), особливої якості і точності не знадобиться. Матеріал може бути PLA, рекомендована величина форсунки 0.4мм, і висота рівня 0.2мм.

Живлення я робив від акумулятора з зарядкою, і вам такий же варіант рекомендую. Отже вибираємо файл з вимикачем з файлів проекту, наприклад ось цей

case3dprinted.jpg

Збірка​

Збірка як така не складна. Основною проблемою може виявитися обрізка скла, якщо ви цього раніше не робили. Також однією з проблем є те, що плати часом трохи змінюються в габаритах. Не сильно, але цього достатньо, щоб прийшлось попотіти, підганяючи корпус під ваші потреби. Я б рекомендував, по можливості, перевіряти 3D модель перед друком на відповідність до розміру плат, і підганяти її відповідно.

Обрізка скла​

Як ви можете здогадатися, справа хоч і не складна але трохи небезпечна. Скло може тріснути, шматок може відлетіти. Так що використовуйте рукавички та захисні окуляри. З набору скелець які ви можете купити на Амазоні за ссилкою наданою вище, слід використовувати ті які мають товщину 1мм.

Щоб відрізати скло, варто скористатися склорізом та лінійкою. Просто проводите по склу вздовж лінійки за потрібними вам розмірами, і потім його відламуєте. Врешті можете сходити в скло-майстерню, якщо маєте сумнів з цього приводу. Те що там понаписували в проекті на Github не дуже працює. Скло різати ножем Stanley/X-Acto вкрай не зручно. Але це моє суб’єктивне бачення. Ну і надалі слід приклеїти скельце на місце монтажу датчика.

lead_instruction.png


Для приклеювання скла потрібно нанести декілька (3-6) маленьких крапельок клею на скло (дійсно маленьких) і швиденько притиснути до поверхні корпусу, сильно але не довго, на клею зазвичай є інструкція. Ваша задача не забруднити пальці та скельце в зоні його прозорості, там де буде проходити світло від підсвітки датчика.

Збираємо електроніку​

Перед монтажем до корпусу перевірте електроніку, якщо не хочете потім знову все розбирати. Врешті може статися, що щось не запрацює. Основні елементи з’єднуються між собою через I2C шину використовуючи QWIIC кабелі. Зверніть увагу, що конектори мають направленість (верх/низ). Теоретично по іншому не вставиш, але всіляке буває. Черговість під’єднання сенсора, контролера та екрану значення немає. Така специфіка шини. Під’єднання батареї має інший тип конектора. В разі, якщо ви хочете використати іншу батарейку, а не ту яка надана в переліку, то вам треба бути уважним при вибору конектора.

Для підключення батарейки я купував окремо конектори - JST PHR-2

connector1.png
connector2.png


Тестова збірка має виглядати подібно до наступного

outofthecase.jpg


Встановлення програмного забезпечення​

Для прошивки контролерів потрібно інсталювати програмне забезпечення. Плата Artemis Thing Plus побудована на платформі Arduino, відтак використовувати можна умовно будь-який інструментарій для роботи з даною платформою. Я не буду проводити приклад з використанням PaltformIO, це трохи складніше ніж Arduino IDE. Я так собі думаю, що в разі, якщо вам потрібна дана інструкція, ця частина яка стосується прошивки, то вам потрібно щось базове. І це буде саме Arduino IDE. Нижче надана покрокова інструкція, хоча, можливо вам знадобиться трохи потренуватися, бо зробити цю інструкцію супер детальною зайняло би не одну сторінку. Отже, в разі якщо щось не зрозуміло, вам прийдеться трошки покопатися в документації.

  • Інсталюємо Arduino IDE, ось тут ви знайдете туторіал
    • Одим з неочевидних кроків для новачків може виявитися необхідність підключити бібліотеки та менеджер, плат що використовуються, зверніть на це особливу увагу
  • Ось тут є інструкція про те як встановити менеджер вашої плати до Arduino IDE
  • Наступна інструкція стосується встановлення бібліотек Micro OLED та MAX30101
  • Далі в середовищі Arduino IDE вибираємо потрібні налаштування:
    • Tools/Board/Sparkfun Apollo 3 boards і в них вибираємо "Artemis Thing Plus"
    • Вибираємо COM порт на якому знаходиться ваш USB-C кабель - Tools/Port і далі COM порт на якому підключено через USB-C кабель ваш Artemis Thing Plus.
  • Після того як ви налаштували середовище, відкриваємо roast_meter.ino в Arduino IDE і компілюємо а надалі грузимо код у вашу плату Artemis Thing Plus
  • Якщо щось пішло не так, тренуємось далі.
  • Якщо все вийшло, то на екрані буде щось подібне до «Please load sample».
  • Після чого можна монтувати систему в корпус.

Монтаж електроніки​

  • MAX 30101 та Micro OLED з’єднуємо за допомогою 50mm QWIIC кабеля.
  • І прикручуємо їх до корпусу використовуючи болтики M3 x 4mm.
sensorandscreeninabox.jpg


  • Приєднуємо Micro OLED до Artemis Thing Plus через 100мм QWIIC кабель. Врешті який кабель ви використаєте між одним та іншим не принципово, якщо вам зручно.
  • Болтиками M3 x 4мм прикручуємо Artemis Thing Plus до корпусу.
  • Встановлюємо батарейку за допомогою двосторонньої липкої стрічки і підключаємо до Artemis Thing Plus на живлення через конектор JST PHR-2.
  • Вимикач прикручуємо болтиками М2.
  • Для під’єднання кабелю та вимикача до плати Artemis Thing Plus я додатково використав конектори (трохи інші але це не принципово), як на фото нижче.
  • Кабель до якого підключаємо вимикач припаюємо до Artemis Thing Plus відповідно на землю та контакт керування живленням з батареї (GND, EN).
  • Можна також обклеїти сенсор чимось світлонепроникним, як буде показано на фото нижче. Але це не супер критично.
  • Скручуємо корпус болтиками M3 x 16мм.
  • Отже все готово. Тепер можна вмикати систему і калібрувати.
20230608_143338.jpg


Окремі коментарі щодо встановлення батарейки/акумулятора​

Наявність батарейки дає можливість зробити пристрій портативним. Для її встановлення потрібно добавити вимикач, як це описано вище.
Artemis Thing Plus дозволяє заряджати акумулятор, отже при підключенні кабелем USB до живлення, акумулятор буде заряджатися. Звісно, якщо ви все підключили правильно.
  • Важливим є перевірка полярності акумулятора перед його встановленням, так як дешеві китайські виробники часом припаюють конектори не тією стороною. Отже перевірте уважно полярність конектора батареї, яку ви використовуєте, перед підключенням до контролера.
    • Некоректна полярність може призвести до виходу з ладу пристрою..
    • На сторінці проекту описана процедура заміни полярності контактів. Я врешті конектори паяв свої, тому такої потреби і не мав. При потребі зміни полярності, і якщо вам захочеться зробити максимально елегантно, розберіть захисну плівку батареї в зоні контактів, витягніть контакти з батареї і перепідключіть до правильних отворів.
  • Встановлення вимикача:
    • Використайте два дроти довжиною до 100мм, мені вистачило у двічі менше, і припаяйте їх до вимикача.
    • Я не припаював дроти безпосередньо до плати, а скористався додатковими проміжними конекторами. Ви можете це побачити на фото вище.
    • Припаяйте дроти до EN та GND контактів Artemis Thing Plus. Ви можете побачити приклад на фото вище.
    • Переконайтеся що ви припаяли дроти добре.
    • Увімкніть Artemis Thing Plus вимикачем і переконайтеся що вимикач працює (вмикає/вимикає плату).
    • Змонтуйте батарею двостороннім скотчем. Не пожалійте грошей на якісний, щоб вона не відвалилась через пів року.
    • Вимикач прикручується до корпусу болтиками M2 x 2мм.

Калібрування​

Практично будь-який електронний інструментарій для вимірювання, так чи інакше потребує калібрування. Не обійтись без калібрування і в нашому випадку. Перш ніж калібрувати, треба визначитися з якою шкалою за якою ми будемо вимірювати колір.

Agtron Gourmet​

В проекті Roast Meter використовується шкала Agtron Gourmet. Майте на увазі що є дві шкали Agtron, Gourmet і Commercial. Формула яка використовується в проекті для генерації значень на основі даних з датчика була перевірена та налаштована шляхом тестування чисельних зразків. Для тестування використовувалися чимало пристроїв Roast Meter та референтний пристрій Lighttells CM100.

Наступна картинка зі сторінки одного з виробників подібного пристрою – Roast Vision. Шкала Roast Vision нам тут не потрібна, але принаймні ви можете скористатися, умовно, розумінням того, які цифри на показнику Roast Meter, оскільки він показує шкалу Agtron Gourmet, приблизно якому ступеню обсмажування відповідають.

gourmet.png


При створенні формули було протестовано зразки обсмаженої кави в діапазоні кольору від 50 до 130 Agtron на CM100. Для вимірювання зразків на всіх пристроях а також CM100, що використовувалися в тестуванні, використовувався дрібний помел, із відстанню між жорнами 70 мікрон на кавомолці Lagom P64 з жорнами MP.

Примітка: при використанні колориметра слід використовувати дрібно-мелену каву, це дає можливість отримати більш точні результати вимірювання. Також зверніть увагу, що в інструкції до CM100 не вказано, який розмір помелу потрібно використовувати для цього вимірювача. Таким чином, формула Agtron Gourmet, що використовується в колориметрі, не претендує на відповідність стандарту підготовки зразків SCA Agtron Gourmet, а також не претендує на отримання абсолютно точних показань Agtron Gourmet. Проте в результаті тестування вдалось досягнути близької відповідності показників Roast Meter та CM100.

Інструкції користувача​

Пристрій доволі примітивний, врешті на ньому всього одна кнопка і два віконця, тому й інструкція виходить не велика:

  • Включати Roast Meter рекомендуємо заздалегідь, за 3-5 хвилин.
  • Пристрій тестувався і проектувався для кімнатних температур, отже проводьте вимірювання при кімнатних температурах.
  • Скельце сенсора можна протирати стандартними серветками для екрану чи інших скляних виробів, врешті це звичайне скло.
  • Зразок для вимірювання кольору повинен бути рівномірним, можете скористатися WDT, як для еспресо.
  • В ідеалі проводьте принаймні три заміри, і використовуйте середнє значення як результат.
  • Накладайте на скельце зразок кави в такій кількості, щоб світло LED підсвітки не могло просвітити цей зразок наскрізь. Це може бути невеличка гірка.
  • Цю гірку кави варто трамбувати, щоб вона рівномірно розподілилась по склу.
  • Після проведення вимірів, прочистіть поверхню пристрою щіточкою, а ще краще мікро пилосмоком. Я особисто використовую для різних кавових пристроїв Xiaomi Mijia.

Калібрування​

В ідеалі проводити калібрування у ваших знайомих, в кого є CM100 😊. Не всім так щастить, тому можна скористатися еталонною субстанцією. А ще краще і так і так. Часом виникають спроби використовувати еталонні картки з кольорами, які продають SCA та ряд сторонніх виробників. Однак я не знаю жодного успішного експерименту з картками. Я сам теж пробував ними скористатися, так як це видається простим та очевидним рішенням. Але цей шлях не працює, принаймні так як хочеться.

Що ж можна використати в якості референтного зразка?

  • Пошуки надалі продовжуються. Спершу були спроби використовувати паперові фільтри Hario, але на травень 2023 року референтним зразком є сода.
    • Sodium bicarbonate (тобто звичайна кухонна сода)
    • Накидайте соди з горбиком на скельце над сенсором, там щоб підсвітка ледь просвічувалась.
    • Цільове значення показника кольору 230. Якщо показник інший то слід задати поправку параметрів налаштування.
Як здійснити поправку параметрів налаштування читання кольору?

  • Після проведення вищезазначених процедур, запишіть показник який ви отримали на еталонній субстанції.
  • Викиньте зразок і прочистіть скельце.
  • Повторіть перевірку значень ще декілька разів, вирахуйте середнє. Хоча, швидше за все результат буде відрізнятися не більш як на кілька одиниць.
  • Змініть змінну «ledBrightness» в коді програми Roast meter на одну чи декілька одиниць. А саме, якщо середнє, яке ви вирахували вище, нижче еталонного значення, збільшуйте значення змінної «ledBrightness» і навпаки, якщо вище – зменшуйте.
  • Завантажте код з новим значення змінної до пристрою Roast Meter
  • Повторіть процес калібрування допоки екран не буде відповідати референтному значенню.

Тестуємо зразки кави​

Колір зразків змінюється з часом, тому, здійснюючи еталонні заміри вашої кави, робіть це зі зразками одного віку. Наприклад, це може бути через 1-2 години після обсмажування. Майте на увазі, що колір одного і того ж самого зразка з віком, що відрізняється на день чи тим більше на тиждень/місяць, може значно відрізнятися. Різниця залежить від самої кави, обсмажування та умов зберігання, і може складати більш ніж 5-10%, що не дає можливість порівняти результат для контролю якості.

Також важливо здійснювати помел на ідентичному рівні. Незначне відхилення не спричинить катастрофи, але при значній відмінності помелу, різниця показників кольору може сягати 10-ки одиниць за шкалою Agtron Gourmet.

Сенсор Roast Meter здійснює заміри відбитого світла від зразків, які ви насипаєте на скельце над сенсором.

Ось декілька прикладів, коли зміни помелу спричиняють видачу різних значень вимірів:

  • Різні жорна можуть створювати різний діапазон розмірів часточок кави, відтак світло може відбиватися від частинок по різному і видавати різний результат.
  • Різна кава з різним ступенем обсмажування та часом після обсмажування, під час помелу може мати різний діапазон розмірів часточок навіть на тих самих жорнах.
Якщо ви шукаєте ідеалу, користайтеся спеціальними ситами для відсіювання часточок одного розміру а також намагайтеся відсіяти лушпиння. За прикладами проведених експериментів учасниками проекту, часточки розміром <500 мікрон, забезпечують стабільні результати вимірювання. Якщо ж у вас немає сит, то розмелюйте подрібніше, і робіть WDT щоб не було комочків, результат теж буде доволі стабільний. Хоча сита забезпечують консистентність краще.

Тестування​

Можна досягнути придатних результатів тестуючи каву по одному разу, однак для більш точних вимірювань, рекомендується наступна процедура:

  • Не забувайте прочитати інструкцію вище, якщо ви ненароком потрапили безпосередньо на даний розділ.
  • Дістаньте та зважте декілька зразків однієї кави, за практикою 3-5 грамів цілком достатньо для проведення вимірів.
  • Відсортуйте квакери, вони вам не потрібні на тесті 😊.
  • кожен зразок по черзі, меліть, насипайте на вимірне скельце, легенько трамбуйте, прочитайте і запишіть значення вимірів.
  • В ідеалі, протестуйте кожен зразок декілька разів, зсипаючи його з сенсора і повертаючи назад. Однак слідкуйте за тим, щоб ємність в яку ви його висипаєте не впливала на колір. Якщо колір одного і того самого зразка відрізняється більш ніж на одиницю, щось не так.
  • Не робіть цього із содою коли ви калібруєте пристрій, використовуйте свіжу. Сода легко забруднюється а відтак змінює колір.
  • Гарненько зчищайте щіточкою і мікро-пилосмоком, якщо у вас такий є, зразки кожного разу.
  • Вимірявши всі зразки однієї кави, вирахуйте середнє.
Наприклад, для кожної кави відсипте три зразки по 5 грамів в окремі чашки. Помеліть їх окремо кавомолкою без залишків (наприклад ручна кавомолка Comandante цілком підійде), або промеліть 3-5 грамів зерна яке ви будете тестувати і викиньте перед відбором зразків. Суть в тому, щоб інша кава, яка була до цього в кавомолці не вплинула на колір ваших зразків. Насипте зразки в Roast Meter на скельце і виміряйте значення кольору. Кожен зразок з кожної окремої чашки після вимірювання висипайте назад в чашку і чистіть скельце щіточкою з тонкими ворсинками. Я користуюсь щіточкою від своєї кавомолки для фільтр кави - Fellow ODE. Змелюю зразки звісно не на ній 😊, а на Comandante. Повторіть процедуру вимірювання з кожним зразком 3 рази. В результаті у вас буде 9 вимірів – три зразки по три рази. Вирахуйте середнє значення.

Заключне слово​

Ліцензія GNU GPL v3 дозволяє продавати пристрої які ви виробили по інформацію, що надана під цією ліцензією при чіткому зазначенні джерела, як це наприклад зроблено в даній статті. Отже ви можете як виробляти їх для себе чи на продаж, або ж придбати у мене. Врешті є декілька проектів в інтернет які їх вже продають. Регулярна ціна з гарантією складає коло 300 доларів США. Якщо ж ви самі закупаєтесь всіма запчастинами, то вони обійдуться вам від 100 до 150 доларів США. Ну і ще трохи ви витратите на доставку. Відтак заробіток на одному пристрої не враховуючи ризики гарантії та витрачений час може складати 100-150 доларів США. Принаймні ціна в одного з виробників у США наразі коло 300 долл.

Додаткові матеріали для ознайомлення:​