Подключение сенсора освещения от Mac Book Pro к Arduino

в 7:57, , рубрики: arduino, diy или сделай сам, метки: ,

Сегодня я хотел бы вам рассказать как я подключил датчик освещенности от мак бук про к ардуино. На самом деле все просто. Главное — немного усидчивости.

Запасная часть у меня оказалась случайно, я выпросил убитый ноутбук MAC book pro 15`, в котором не хватало большей части запчастей, у своих коллег, (они имели на него виды в качестве мишени для тира) не помню, что конкретно мне от него понадобилось кажется кнопки для замены клавиатуры на ноуте моей супруги, но среди всего прочего – полезного я нашел датчик освещения. Построен он на фото диоде – сенсоре для видимого света от SHARP BS520 а также на усилителе от MAXIM MAX4231. Очень маленькая и компактная конструкция, сложно было понять что к чему из за обилия мелких деталей и почти не просматриваемой дорожки.

Реверс-инженеринг

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

Датчик

Я подключил к монтажной плате +5В от ардуино, там же я взял землю. Развел питание на плате и подключил к нему наш датчик. Аналоговый сигнал забирается с порта вывода номер A0.

Внешний вид

Также, для наглядности я использовал светодиод от мертвого контроллера переносного винчестера. Если значение опустится ниже чем 500 – он загорается. Получилась простая сборка: сенсор – исполнитель. Когда темно к комнате горит ночник, значит значение счетчика ниже чем 500. Если более – светодиод гаснет. Резистор к светодиоду не нужен если он подключен через 13 порт, но я нарочно использовал 12 порт и поместил резистор на 220Ом.

Плата светодиода

В итоге я написал такой элементарный скрипт:
void setup()
{
// Установливаем аналоговый порт А0 на вход
pinMode (A0, INPUT);
// Устанавливаем коммуникацию с портом
Serial.begin(9600);
}
void loop()
{
// Записываем значение с датчика
int val = analogRead(A0);
// Условия загорания Led
digitalWrite(12, (val<500)?HIGH:LOW);
// Выводим в порт данные
Serial.println(val);
// Задержка между циклами
delay(500);
}

А вот так это все выглядит схематически:

image

Выводы

В итоге моих изысканий я научился:
1. Разбирать мак и собирать его назад, правда сомнительное умение – он уже устарел.
2. Понял, что оказывается техника МАК – это просто грамотно собранное решение а не предмет культа. (Да простят меня маководы за такие эксперименты над маком)
3. Я начал заниматься электроникой несколько недель назад, поэтому думаю, что проект будет также полезен для новичка.

Ссылки на доки и сенсор

Сам сенсор
Микросхема MAXIM MAX4233ABC-T
Фотодиод Sharp
Офф сайт Arduino

Дальнейшие планы

Заинтересовала камера, встроенная в монитор. Она построена на микросхеме, у которой куча полезных интерфейсов, включая I2C и USB, аппаратный кодек JPEG и аудио кодек. Но это уже совсем иная история.
Итак на сегодня все, до встречи.

P.S. Благодарю за Инвайт, НЛО!

Автор: Nordium

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js