Jump to content

pompiduskus

Members
  • Content Count

    44
  • Joined

  • Last visited

Community Reputation

3 Обычный

About pompiduskus

  • Rank
    Новенький
  • Birthday 09/18/1988

Информация

  • Пол
    Мужчина
  • Интересы
    Программирование. 3х мерное моделирование. Практика Дзен.
  • Город
    Гомель

Электроника

  • Стаж в электронике
    Менее года
  • Сфера радиоэлектроники
    микроконтроллеры, SOC, питания
  1. Спасибо еще раз, я вроде догнал теперь. Значит единсвенный способ будет как на вашей первой схеме ?
  2. Дак они у меня подключены кажды к своему. Если подключить любой один блок, то все рабртает как нужно, но как только подключаю еще один показания идут не верные. Может ли быть такое что идет очень сильная просадка напряжения ? Если такое может быть, то наверное только транзисторыспасут положение ?
  3. Будит ли такой варинт тоже правильным ?
  4. Поставил диоды, ка кмне и посоветовали. Но поставил не на каждый диод по диоду, а по одному на кажды PWM пин. Так как нету больше. Эти 3 штуки выпаял из хлама. Вообщем, запустил я эту дыр-дыр машину, Эффект конечно красивый, но к сожалению ограничение в 940nm это облом. Он конечно захватывает еще +- по 20nm по сторонам, но это мизер. Пламя от турбо зажигалки не видит а от простой видит. Видит любое пламя или разкаленный предмер от темно крассного до ярко крассного цвета. Ну на солнце естественно реагирует отлично, оно и понятно, там весь спектр. На скрине видна зажигалка, примерно с 5-10 сантиметров. Но как я писал в самом начале, если не регистрировать пины на INPUT то зажигалку видит с 3-4 МЕТРОВ. Не понимаю как это происходит.
  5. Спасибо за совет! А на счет проги, у меня так и стоит. Попробую поставить диоды. // ==================================================================== #define R_0 3 #define R_1 4 #define R_2 5 #define NUM_IR 12 int STP_DELAY = 10; int DATA_0[NUM_IR]; int DATA_1[NUM_IR]; int DATA_2[NUM_IR]; int AN[] = { A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11 }; //unsigned int mSerialSpeed = 9600; //unsigned int mSerialSpeed = 19200; unsigned int mSerialSpeed = 57600; // ==================================================================== void print( String data ) { Serial.print( data ); } void println( String data ) { Serial.println( data ); } void print( int data ) { Serial.print( data ); } void println( int data ) { Serial.println( data ); } // ==================================================================== void POWER_OFF(void) { digitalWrite( R_0, LOW); digitalWrite( R_1, LOW); digitalWrite( R_2, LOW); } // ==================================================================== int _delay = 20; void READ_ROWS() { // ------------------------------------------------------------ delay(_delay); print("READING: [0] "); POWER_OFF(); delay(_delay); digitalWrite( R_0, HIGH); delay(_delay); for (int i=0; i < NUM_IR; i++) { //DATA_0[i] = map( 1023-analogRead( AN[i] ), 0, 1023, 0, 255 ); DATA_0[i] = analogRead( AN[i] ); print( DATA_0[i] ); print( ", " ); } // ------------------------------------------------------------ delay(_delay); print("\nREADING: [1] "); POWER_OFF(); delay(_delay); digitalWrite( R_1, HIGH); delay(_delay); for (int i=0; i < NUM_IR; i++) { //DATA_1[i] = map( 1023-analogRead( AN[i] ), 0, 1023, 0, 255 ); DATA_1[i] = analogRead( AN[i] ); print( DATA_1[i] ); print( ", " ); } // ------------------------------------------------------------ delay(_delay); print("\nREADING: [2] "); POWER_OFF(); delay(_delay); digitalWrite( R_2, HIGH); delay(_delay); for (int i=0; i < NUM_IR; i++) { //DATA_2[i] = map( 1023-analogRead( AN[i] ), 0, 1023, 0, 255 ); DATA_2[i] = analogRead( AN[i] ); print( DATA_2[i] ); print( ", " ); } // ------------------------------------------------------------ println("\n--------------------------------------------------------------------------"); // ------------------------------------------------------------ } // ==================================================================== void setup(void) { // ------------------------------------------------------------ Serial.begin( mSerialSpeed); for (int i=0; i < NUM_IR; i++) pinMode( AN[i] , INPUT); pinMode( R_0, OUTPUT); pinMode( R_1, OUTPUT); pinMode( R_2, OUTPUT); POWER_OFF(); // ------------------------------------------------------------ } // ==================================================================== void loop( void ) { // ------------------------------------------------------------ //delay(1000); READ_ROWS(); // ------------------------------------------------------------ } // ==================================================================== String _str_act,_ACT, _ACT_DATA = ""; void serialEvent() { // ------------------------------------------------------------ while (Serial.available() > 0 ) { _str_act = Serial.readString(); } _ACT = _str_act.substring(0, _str_act.indexOf(",")); _ACT_DATA = _str_act.substring(_str_act.indexOf(",")+1); // -------------------------------------------------------- int _valid_cmd = 0; // -------------------------------------------------------- if (_ACT == "f") { //_for(_ACT_DATA.toInt()); _valid_cmd = 1; delay(500); } else if (_ACT == "b") { //_back(_ACT_DATA.toInt()); _valid_cmd = 1; delay(500); } else if (_ACT == "r") { //_right(_ACT_DATA.toInt()); _valid_cmd = 1; delay(500); } else if (_ACT == "l") { //_left(_ACT_DATA.toInt()); _valid_cmd = 1; delay(500); } else if (_ACT == "tl") { //_turn_left(_ACT_DATA.toInt()); _valid_cmd = 1; delay(500); } else if (_ACT == "tr") { //_turn_right(_ACT_DATA.toInt()); _valid_cmd = 1; delay(500); } else if (_ACT == "bl") { //_back_left(_ACT_DATA.toInt()); _valid_cmd = 1; delay(500); } else if (_ACT == "br") { //_back_right(_ACT_DATA.toInt()); _valid_cmd = 1; delay(500); } // -------------------------------------------------------- //clearStepper(mr1, mr2, mr3, mr4); //clearStepper(ml1, ml2, ml3, ml4); // -------------------------------------------------------- /* if (_valid_cmd == 0) { Serial.print(" Unknown CMD: "); Serial.print(" |"+_ACT+"| "); Serial.println(" - |"+_ACT_DATA+"| "); } */ // ------------------------------------------------------------ Serial.print( "CMD: "+_ACT+" | "+_ACT_DATA ); // ------------------------------------------------------------ } // ==================================================================== void _step_(int p1, int p2, int p3, int p4, int type, int SIDE) { int t1, t2, t3, t4; if (SIDE == 1) { t1 = p1; t2 = p2; t3 = p3; t4 = p4; } else { t1 = p4; t2 = p3; t3 = p2; t4 = p1; } if (type == 0) { /* LOW TURQUE */ digitalWrite(t1, HIGH); digitalWrite(t2, LOW); digitalWrite(t3, LOW); digitalWrite(t4, LOW); delay(STP_DELAY); digitalWrite(t1, LOW); digitalWrite(t2, HIGH); digitalWrite(t3, LOW); digitalWrite(t4, LOW); delay(STP_DELAY); digitalWrite(t1, LOW); digitalWrite(t2, LOW); digitalWrite(t3, HIGH); digitalWrite(t4, LOW); delay(STP_DELAY); digitalWrite(t1, LOW); digitalWrite(t2, LOW); digitalWrite(t3, LOW); digitalWrite(t4, HIGH); delay(STP_DELAY); } else if (type == 1) { /* HIGH TURQUE */ digitalWrite(t1, HIGH); digitalWrite(t2, HIGH); digitalWrite(t3, LOW); digitalWrite(t4, LOW); delay(STP_DELAY); digitalWrite(t1, LOW); digitalWrite(t2, HIGH); digitalWrite(t3, HIGH); digitalWrite(t4, LOW); delay(STP_DELAY); digitalWrite(t1, LOW); digitalWrite(t2, LOW); digitalWrite(t3, HIGH); digitalWrite(t4, HIGH); delay(STP_DELAY); digitalWrite(t1, HIGH); digitalWrite(t2, LOW); digitalWrite(t3, LOW); digitalWrite(t4, HIGH); delay(STP_DELAY); } } // ==================================================================== void clearStepper(int p1, int p2, int p3, int p4) { digitalWrite(p1, LOW); digitalWrite(p2, LOW); digitalWrite(p3, LOW); digitalWrite(p4, LOW); } // ==================================================================== void _REM_HIGH(int p1, int p2, int p3, int p4) { digitalWrite(p1, HIGH); digitalWrite(p2, HIGH); digitalWrite(p3, LOW); digitalWrite(p4, LOW); } // ==================================================================== void _REM_LOW(int p1, int p2, int p3, int p4) { digitalWrite(p1, HIGH); digitalWrite(p2, LOW); digitalWrite(p3, LOW); digitalWrite(p4, LOW); } // ====================================================================
  6. Это интересная штука, приминений для не простоневероятное количество, от поиска утечек (термо), герметизация, проблемные места авто-двигателей , можно 2а дня перечислять что с ней можно делать. На звсезды смотреть в ИК диапазоне. Думаю очень красиво. Сам еще не смотрел.
  7. Нет, просто часть ближнего ИК. примерно 940 нм. Цель вообще сделать тепловизор. Сама эта рейка из 36 диодов будет представлять ряд "пикселей". А поднимать и опускать ее буду при помощи ШД. Получится некое подобие матрици. Ну это в планах. А так пока не работает как хотелось-бы
  8. Собрал по схеме выше. Если подключить один из каналов, выдает от 0 до 1023. Как и должно быть. Но как только подключаю все, или любые два то дылает от 0 до 660 +-. Не понимаю с чем это связяно. И еще очень интересная вещь происходит. Если не регистрировать PWM3-5 как INPUT а просто в программе вызывать digitalWrite HIGH/LOW то чувствительность резко возростает. Тоже не понятно с чем это связано. Понятно что лучше всего испольховать быстрые мосфеты, но к сожадению у меня нет ни транзисторов ни мосфет, и вообще нет ничего.
  9. Добрый день! Не уверен что я правильно нарисовал схему. Смысл такой: Есть Arduino Due, у нее есть 12 аналоговых I/O. А я хотел-бы считывать данные с 36ти IR-Фотодиодов. Придумал такую штуку, 3 блока по 12 диодов, каждый блок имеет отдельное питание Если нужно считывать данные в первых 12ти, подаю питание на этот блок, и считываю последовательно все 12 I/O. Но поскольку я не силен в этих делах, то мне кажется что те блоки которые не запитаны, все равно будут влиять на активный блок ??? Да и вообще нормальное ли это решение для такой задачи ?
  10. Получается что если использовать катушку с трапециидальной обмоткой как в видео, то сердечник будет стартовать плавнее, не будет рвать с места ? Или это будет совсем не заметно ? И только при каких-то огромных размерах станет явным ?
  11. Посмотрел ролик где показан отбойный молоток приводимый в действие електро магнитом. Как я понял из ролика КПД обмотик катушки как на рисунке 2 выше чем у той что на рисунке 1 ? Так ли это, и почему ?
  12. А если у меня блок питания уже стабилизирован и выдает всегда 28 вольт. Могу ли я исключисть стабилитрон на 33 вольта в этой схеме ?
  13. Как вы и сказали. Нужно иметь возможность регулировать ток, и напряжение. Этого мне пока что хватит. Подскажите где посмотреть инфу про "КРН12+ КТ" ничего не могу найти. Даже гугл выдает какие-то женские штаны. Поиск по форуму тоже молчит. Пробовал искать "КРН12" русскими, и заморскими "KPH12".
×
×
  • Create New...