Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Работа для программиста > Фриланс
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.05.2016, 22:51   #1
Len1z
Новичок
Джуниор
 
Регистрация: 13.05.2016
Сообщений: 0
Радость Скетч Arduino Light Meter

Необходимо написание скетча под Arduino (возможно изменить имеющийся в качестве примера).

Имеется контроллер Arduino Pro Mini (Atmega 168, 8Mhz, 3.3v)
Дисплей OLED 128x64 I2C
Датчик освещенности BH1750

На дисплее должны выводиться три параметра: диафрагма, iso и выдержка.
Диапазон значений диафрагмы: 1, 1.4, 2, 2.8, 4, 5.6, 8, 11, 16, 22, 32, 45, 64, 90.
Диапазон значений iso: 6, 12, 25, 50, 100, 200, 400, 800, 1600, 3200, 6400.
Диапазон значений выдержки: 2, 4, 8, 15, 30, 60, 125, 250, 500, 1000, 2000, 4000, 8000.

Пример:
http://images.vfl.ru/ii/1463168968/0...12648580_s.jpg

С помощью кнопок можно менять значения диафрагмы и iso, а значение выдержки будет рассчитываться исходя из введенных значений и показаний датчика BH1750. По принципу как сделано в этом скетче: http://kadookacameraworks.com/assets...EPROM_Rev1.ino
То есть по сути нужно повторить это устройство: http://kadookacameraworks.com/light.html (скетч выше взят отсюда) но на Arduino Pro Mini с датчиком освещенности BH1750 и экраном 128x64.

Интересует ориентировочная цена, отпишу на почту. Если что писать мне на почту.

Len1zombie@gmail.com
Len1z вне форума Ответить с цитированием
Старый 13.05.2016, 23:40   #2
Avazart
Форумчанин
 
Аватар для Avazart
 
Регистрация: 13.08.2011
Сообщений: 184
По умолчанию

<<На дисплее должны выводиться три параметра: диафрагма, iso и выдержка.
Диапазон значений диафрагмы: 1, 1.4, 2, 2.8, 4, 5.6, 8, 11, 16, 22, 32, 45, 64, 90.
Диапазон значений iso: 6, 12, 25, 50, 100, 200, 400, 800, 1600, 3200, 6400.
Диапазон значений выдержки: 2, 4, 8, 15, 30, 60, 125, 250, 500, 1000, 2000, 4000, 8000.>>

-Это все высчитывается по показанию освещенности от BH1750?

- Сколько есть времени на реализацию? Допустим с учетом доставки деталей для сборки и проверки на реальном железе?
- Сможете ли собрать/спаять все сами? Или рассчитываете на то что готовое устройство вам вышлют домой по почте?

Последний раз редактировалось Avazart; 13.05.2016 в 23:54.
Avazart вне форума Ответить с цитированием
Старый 14.05.2016, 12:12   #3
kutani
Форумчанин
 
Регистрация: 23.01.2016
Сообщений: 608
По умолчанию

Экспонометр https://www.youtube.com/watch?v=q4mKxsW39aE
На аукро и олх готовый обойдется дешевле комплектущих, дешевле даже буратино-нано с али )
kutani вне форума Ответить с цитированием
Старый 14.05.2016, 14:02   #4
Len1z
Новичок
Джуниор
 
Регистрация: 13.05.2016
Сообщений: 0
По умолчанию

Цитата:
Сообщение от Avazart Посмотреть сообщение
<<На дисплее должны выводиться три параметра: диафрагма, iso и выдержка.
Диапазон значений диафрагмы: 1, 1.4, 2, 2.8, 4, 5.6, 8, 11, 16, 22, 32, 45, 64, 90.
Диапазон значений iso: 6, 12, 25, 50, 100, 200, 400, 800, 1600, 3200, 6400.
Диапазон значений выдержки: 2, 4, 8, 15, 30, 60, 125, 250, 500, 1000, 2000, 4000, 8000.>>

-Это все высчитывается по показанию освещенности от BH1750?
Высчитываться должно только значение выдержки исходя из показаний датчика BH1750 и вручную заданных параметров диафрагмы и iso.
В скетче, который в начале темы приводил для примера, есть часть кода (как я предполагаю) отвечающая за рассчеты:

Код:
    float T = pow(A[Am],2)*64/(lux*S[Sm]);                  //T = exposure time, in seconds
      if (T >= 60)                                 
      {
        Tdisplay = 0;  //Exposure is now in minutes
        Tmin = T/60;
      }
      else if (T < 0.75)
      {
        Tdisplay = 1;  //Exposure is now in fractional form
        if (T < 0.000125) {Tdisplay = 3;}
        if ((T <= 0.000188) && (T > 0.000125)) {Tfr = 8000;}
        if ((T <= 0.000375) && (T > 0.000188)) {Tfr = 4000;}
        if ((T <= 0.00075) && (T > 0.000375)) {Tfr = 2000;}
        if ((T <= 0.0015) && (T > 0.00075)) {Tfr = 1000;}
        if ((T <= 0.003) && (T > 0.0015)) {Tfr = 500;}
        if ((T <= 0.006) && (T > 0.003)) {Tfr = 250;}
        if ((T <= 0.012333) && (T > 0.006)) {Tfr = 125;}
        if ((T <= 0.025) && (T > 0.012333)) {Tfr = 60;}
        if ((T <= 0.05) && (T > 0.025)) {Tfr = 30;}
        if ((T <= 0.095833) && (T > 0.05)) {Tfr = 15;}
        if ((T <= 0.1875) && (T > 0.095833)) {Tfr = 8;}
        if ((T <= 0.375) && (T > 0.1875)) {Tfr = 4;}
        if ((T <= 0.75) && (T > 0.375)) {Tfr = 2;}  
      }
      else if ((T>=0.75)&&(T<60))
      {
        Tdisplay = 2;  //Exposure in seconds
      }
      if (lux == 0)                                        //This happens if the sensor is overloaded or senses no light.
      {
        Tdisplay = 3;
      }
Не знаю как лучше объяснить, но в целом нужно повторить функционал этого скетча.

Цитата:
- Сколько есть времени на реализацию? Допустим с учетом доставки деталей для сборки и проверки на реальном железе?
До 25 мая уже нужен работающий скетч. Возможно ли обойтись без отправки деталей? так как боюсь такой возможности нет.

Цитата:
- Сможете ли собрать/спаять все сами? Или рассчитываете на то что готовое устройство вам вышлют домой по почте?
Планирую собирать сам, необходимые навыки есть, но вот в программировании полный ноль.
Len1z вне форума Ответить с цитированием
Старый 14.05.2016, 14:09   #5
Len1z
Новичок
Джуниор
 
Регистрация: 13.05.2016
Сообщений: 0
По умолчанию

Цитата:
Сообщение от kutani Посмотреть сообщение
Экспонометр https://www.youtube.com/watch?v=q4mKxsW39aE
На аукро и олх готовый обойдется дешевле комплектущих, дешевле даже буратино-нано с али )
Увы, такие мне не подходят. Нужен цифровой экспонометр на имеющихся в данный момент деталях, который впоследствии вмонтирую в другое устройство.
Len1z вне форума Ответить с цитированием
Старый 14.05.2016, 14:24   #6
Avazart
Форумчанин
 
Аватар для Avazart
 
Регистрация: 13.08.2011
Сообщений: 184
По умолчанию

<<До 25 мая уже нужен работающий скетч. Возможно ли обойтись без отправки деталей? так как боюсь такой возможности нет.>>

-Тогда пролет, без наличия железа не возьмусь писать в слепую.
BH1750 и OLED 128x64 I2C у меня к сожалению нет в наличии, а заказывать с Китая это до 20...60 дней.
(плюс желательно неделя на разработку скетча).

<<Планирую собирать сам, необходимые навыки есть, но вот в программировании полный ноль. >>

-Как я понимаю как минимум нужны навыки пайки- что бы припаять кнопки к плате(желательно вытравленной под кнопки а не навесом), все остальное вроде можно dupon-проводами соединить.

Последний раз редактировалось Avazart; 14.05.2016 в 14:33.
Avazart вне форума Ответить с цитированием
Старый 14.05.2016, 19:18   #7
kutani
Форумчанин
 
Регистрация: 23.01.2016
Сообщений: 608
По умолчанию

Цитата:
Увы, такие мне не подходят. Нужен цифровой экспонометр
на али от 11 абамов цифровые как раз. Встраивание обусловлено временем раскрутки болтов отверткой )

Цитата:
на имеющихся в данный момент деталях
по большому счету это от жадности.

Arduino Pro Mini без встроенного конвертора USB/UART, а значит чтобы ее запрограммировать еще и отдельная плата-конвертор нужен (FTDI, CP2102, PL2303, CH340G и т.п.)
kutani вне форума Ответить с цитированием
Старый 15.05.2016, 00:39   #8
Avazart
Форумчанин
 
Аватар для Avazart
 
Регистрация: 13.08.2011
Сообщений: 184
По умолчанию

<<отдельная плата-конвертор нужен>>

Или другая дуина например UNO, нет никаких проблем зато дешевле и питание 3.3V
Avazart вне форума Ответить с цитированием
Старый 15.05.2016, 01:09   #9
Len1z
Новичок
Джуниор
 
Регистрация: 13.05.2016
Сообщений: 0
По умолчанию

Цитата:
Сообщение от kutani Посмотреть сообщение
на али от 11 абамов цифровые как раз. Встраивание обусловлено временем раскрутки болтов отверткой )
Не поделитесь ссылкой? Всё что видел не подходило либо по размерам, либо это были какие угодно устройства, но не экспонометры.

USB-TTL конвертор у меня есть, уже заливал разные простые скетчи чтоб разобраться "как оно работает". Нужен лишь скетч под мои задачи.
В общем, все еще в поисках исполнителя.
Len1z вне форума Ответить с цитированием
Старый 15.05.2016, 15:02   #10
kutani
Форумчанин
 
Регистрация: 23.01.2016
Сообщений: 608
По умолчанию

Цитата:
Или другая дуина например UNO, нет никаких проблем зато дешевле и питание 3.3V
нет смысла от другой дуины, когда можно взять сразу правильную дуину )
Уно не дешевле наны.

Цитата:
Не поделитесь ссылкой?
заходишь на али, набираешь - цифровые экспонометры-люксметры. Входишь в нирвану.

Цитата:
не подходило либо по размерам
а вы и не оговаривали размеры. Кроме того, в готовом корпусе платка совсем крохотная )
kutani вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ARDUINO: -- Необходимо написать программу, - скетч. Syxz Помощь студентам 0 01.06.2015 15:03
Скетч, написанный через делфи Алексей_2012 Компьютерное железо 3 13.05.2015 20:41
Нужен скетч для Arduino Andrey_od Фриланс 6 12.05.2015 14:29
[Perfect Light] Двадцатьпяшки SaiLight Gamedev - cоздание игр: Unity, OpenGL, DirectX 2 23.01.2014 13:03
Скетч Arduino -> C++ Skitalec Общие вопросы C/C++ 1 09.11.2012 19:36