Привет Хабр! Кремний и видеокарты дорожают, а квантовые компьютеры не поместятся в квартире. Поэтому я решил собрать биопроцессор своими руками из денежного дерева на подоконнике...

Предупреждение: данная статья создавалась ради веселья и получения новых инженерных навыков.

Как это сделано

Свой биосопроцессор я решил создать на основе всем доступной платы Arduino и четырёх проводков воткнутых в мясистый лист Толстянки.

Принцип работы предельно прост: по двум проводам подключённым с одной стороны к цифровым пинам Arduino я подаю напряжение (LOW или HIGH) — это вход, а рядом провод воткнутый в аналоговый пин считывает напряжение — это выход. Также чтобы цепь не работала как антенна, я добавил провод для заземления (GND). Из‑за внутренних процессов растения на выходе получаются уникальные данные.

Почему именно Толстянка

Я выбрал это растение не случайно, у Толстянки очень сочные мясистые листья, что способствует улучшению биоэлектро эффектов, а ещё так проще втыкать провода (электроды).

Сборка

схема сборки
схема сборки

Примечание: в своём проекте я использовал Arduino Pro Micro, но вы можете использовать любую другую плату (например Nano, как на схеме).

Таблица соединений:

Провод

Куда вставлять с первого конца

Куда вставлять со второго конца

первый

D2

лист

второй

D3

лист

третий

A3

лист

четвёртый

GND

лист

Код:

// Подключение пинов
#define X 2
#define Y 3
#define Z A3 
void setup() {
  // Предварительная настройка (выполняется 1 раз)
  pinMode(X, OUTPUT);
  pinMode(Y, OUTPUT);
  Serial.begin(9600);
}

void loop() {
  // Основной цикл
  bio(LOW, HIGH);
  bio(HIGH, LOW);
  bio(HIGH, HIGH);
  bio(LOW, LOW);
}
// Функция для общения с биосопроцессором
void bio(int x, int y){
  // Подача сигнала
  digitalWrite(X, x);
  digitalWrite(Y, y);
  // Задержка для того чтобы ток успел провзаимодействовать с растением
  delay(10);
  int result = analogRead(Z);
  // Вывод результата
  Serial.println(result);
  // Отключаем подачу тока до следующего вызова
  digitalWrite(X, LOW);
  digitalWrite(Y, LOW);
}

Что вышло

результат
результат

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

Входные данные

Выходное значение (минимум)

Выходное значение (максимум)

LOW, LOW

15

19

HIGH, HIGH

572

576

LOW, HIGH

412

417

HIGH, LOW

385

387

Полученные данные можно преобразовать в логические операции (например AND, OR) или оставить как есть, ведь это уже уникальная нелинейная функция.

Почему это можно называть аналоговым биосопроцессором

Почему «био‑»

Потому что все вычисления и изменения на выходе получаются из биоэлектрических процессов, таких как ионная проводимость (ток переносится за счёт движения ионов по клеткам, а не за счёт электронов как в кремнии) и динамическое изменение сопротивления за счёт реакции живой ткани.

Почему «аналоговый»

Потому что все изменения проходят на аналоговой логике (плавное преобразование).

Почему «процессор»

Потому что, по определению процессор — устройство которое изменяет входные данные по определённой функции, у меня, растение, как раз выдаёт значение на выходе, изменённое по определённому паттерну, если просто соединить все провода вместе без вытыкания в растение то паттерн ломается и выходное значение становится равно 0 не зависимо от входных данных.\

Почему «со»

Потому что Толстянка работает в паре с Arduino, и теряет функционал без платы.

Вывод

результат
результат

Я смог собрать простейший биосопроцессор на основе дешёвой платы и денежного дерева и доказал что биопроцессор (пусть и самый элементарный) можно собрать на коленке за 15 минут, а не в стерильной лаборатории.

Помимо простых логических операций такой проект можно адаптировать под генерацию случайных чисел, запуск DOOM и Linux или вообще заставить майнить Биткоин, но это уже совсем другая история...

Спасибо что дочитали статью до конца! Надеюсь вам понравился мой инженерно‑ботанический проект и вы не будете сильно сторго судить мой биопроцессор, ведь он только учится и очень требователен к поливу)