Спалил 2 ардуины

Finist
Offline
Зарегистрирован: 30.08.2016

Доброго времени форумчане! Спалил 2 ардуины за 2 дня. ПОМОГИТЕ! Суть вот в чём, паяю схему, у всех работает, у меня после пайки, подключаю к USB перестаёт мигать L , только pwr горит зелёным, и дымок начинает идти из VIN, потом плата не проишивается и выдаёт 

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x1b
 
схема во вложении. Помогите, осталась 1 плата (((
Только вместо 15 ком резисторов, подстроечные на 20 ком
 
a5021
Offline
Зарегистрирован: 07.07.2013

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

Logik
Offline
Зарегистрирован: 05.08.2014

А питание с USB или еще как? При питании с USB спалится сложно, защита порта обычно отключает быстрей.
 

a5021
Offline
Зарегистрирован: 07.07.2013

Порт по стандарту выдает до 0.5А. Теоретически, подпалить аруину этого может хватить.

Finist
Offline
Зарегистрирован: 30.08.2016

Питание от usb

UserDead
UserDead аватар
Offline
Зарегистрирован: 29.11.2015

А для чего фототранзисторы подключены к d3 d2 или я неправильно понял.

А что если их подсадить на землю в цифровых выводах через 10к

Если бы такое было, я бы замерял ток на каждой цепи чтобы узнать в каком месте кз или что-то вроде этого. Я как-то работая над стендом, целый день чуял запах гари но не мог найти источник. Начал мерять потребление на цепях отдельно, и нашел как коротнул 5в на землю по невнимательности. А ток там был да, 1,2 А. Вам тогда смотреть более 100мА (дуина, светодиоды где-то так и едят)

Finist
Offline
Зарегистрирован: 30.08.2016

Это не моя схема, говорят у других работает

UserDead
UserDead аватар
Offline
Зарегистрирован: 29.11.2015

Тогда логично что вы где-то накосячили в подключении и на каком-то участке цепи много жрет тока и выводит из строя устройство. И все же хотелось бы знать что за устройство такое. Зачем там тягать измерение с фототранзисторов на цифровые пины если достаточно аналоговых с посадкой на землю 15кОм. наверное это ошибка на схеме. В скетче фигурируют в setUp D3 и D2?

Мне это напоминает "щелевой датчик".

//позже

А смотрю на + подтянуты резисторы с аналоговых входов. Тогда вообще не понимаю чего этим хотят добиться. Обычно беря измерения с фото-устройств + к фото-устрройству, выход из фотоустройства на аналооговый пин подтянутый на землю 10к. Или я чего-то недопонимаю.

Celestron
Offline
Зарегистрирован: 13.04.2016

И все-таки, действительно, зачем зеленый и желтый провода подключены к нескольким пинам одновременнно? Можно скетч увидеть?

DIYMan
DIYMan аватар
Offline
Зарегистрирован: 23.11.2015

Finist пишет:
Это не моя схема, говорят у других работает

Говорят, что кур доят ;) Подключение действительно - попахивает. Скетч есть к этому "добру"?

Finist
Offline
Зарегистрирован: 30.08.2016

Скетч скину вечером

UserDead
UserDead аватар
Offline
Зарегистрирован: 29.11.2015

Как предполагаемому новичку не советую выбрасывать вышедшие из строя платы. Если сгорела МК или стабилизатор его можно поменять в ближайшей мастерской по ремотам мобильных (главное чтобы паяльный фен был). Если МК то купить его заранее и принести. Я так "воскрешал" свою pro mini когда камень накрылся от "случайных" 12 вольт. Нужно потом только bootloader другой дуней прошить.

Joiner
Offline
Зарегистрирован: 04.09.2014

Finist пишет:
Это не моя схема, говорят у других работает

Нельзя с такой схемой работать!!! (как мне кажется)...правильно сказали выше, что нельзя пины напрямую замыкать, хотя не уверен, может просто не знаю, что можно.... А что вообще эта штука должна делать?

Клапауций 232
Offline
Зарегистрирован: 05.04.2016

Joiner пишет:

Finist пишет:
Это не моя схема, говорят у других работает

Нельзя с такой схемой работать!!! (как мне кажется)...правильно сказали выше, что нельзя пины напрямую замыкать, хотя не уверен, может просто не знаю, что можно.... А что вообще эта штука должна делать?

можно - УК разрешает.

Joiner
Offline
Зарегистрирован: 04.09.2014

Клапауций 232 пишет:

можно - УК разрешает.

УК то разрешает, а как МК?

Клапауций 232
Offline
Зарегистрирован: 05.04.2016

Joiner пишет:

Клапауций 232 пишет:

можно - УК разрешает.

УК то разрешает, а как МК?

никак потому, что можно.

иначе, пилил бы ТС сейчас ягель лобзиком в Сибири.

Finist
Offline
Зарегистрирован: 30.08.2016
/*
Created 2016
by AlexGyver
AlexGyver Home Labs Inc.
*/
char masschar[5];  //массив символов для перевода
String massstring;  //строка, в которую задаётся масса в режиме выбора массы
int set,setmass,rapidtime;
boolean initial,flagmass, flagmassset, rapidflag;  //флажки
int n=1;            //номер выстрела, начиная с 1
float velocity, energy;    //переменная для хранения скорости
float mass=0.00025;       //масса снаряда в килограммах
float dist=0.0847;       //расстояние между датчиками в метрах  
volatile unsigned long gap1, gap2;    //отметки времени прохождения пулей датчиков
unsigned long lastshot;
 
void setup() {
Serial.begin(9600);    //открываем COM порт
attachInterrupt(1,start,RISING);     //аппаратное прерывание при прохождении первого датчика
attachInterrupt(0,finish,RISING);      //аппаратное прерывание при прохождении второго датчика
}
void start() 
{
if (gap1==0) {   //если измерение еще не проводилось
gap1=micros(); //получаем время работы ардуино с момента включения до момента пролетания первой пули
}
}
void finish() 
{
if (gap2==0) {  //если измерение еще не проводилось
gap2=micros();  //получаем время работы ардуино с момента включения до момента пролетания второй пули
}
}
void loop() {
if (initial==0) {                          //флажок первого запуска
Serial.println("Press 3 to rapidity mode");                      //режим измерения скорострельности
Serial.println("Press 2 to mass set mode");                      //режим выбора массы снаряда
Serial.println("Press 1 to service mode");                      //режим отладки (резисторы)
Serial.println("Press 0 speed measure mode (default)");        //выход из режимов
Serial.println("System is ready, just pull the f*ckin trigger!");   //уведомление о том, что хрон готов к работе
Serial.println(" ");
initial=1;       //первый запуск, больше не показываем сообщения
}
 
if (Serial.available() > 0 && set!=2) {   //еси есть какие буквы на вход с порта и не выбран 2 режим
int val=Serial.read();                  //прочитать что было послано в порт
switch(val) {                           //оператор выбора
 
case 48: set=0; flagmass=0; rapidflag=0; initial=0; break;    //если приняли 0 то выбрать 0 режим
case 49: set=1; break;                //если приняли 1 то запустить режим 1
case 50: set=2; break;                //если приняли 2 то запустить режим 2
case 51: set=3; break;                //если приняли 3 то запустить режим 3
}
}
 
if (set==1) {                    //если 1 режим
Serial.print("sensor 1: ");
Serial.println(analogRead(2));  //показать значение на первом датчике
Serial.print("sensor 2: "); 
Serial.print(analogRead(4));   //показать значение на втором датчике
Serial.println();
Serial.println();              //ну типо два переноса строки
}
 
if (set==2) {             //если 2 режим
if (flagmass==0) {      //флажок чтобы показать надпись только 1 раз
Serial.print("Set the mass of bullet (gramm): ");     //надпись
flagmass=1;
}
if(Serial.available() > 0)         //если есть что на вход с порта
{
massstring = Serial.readStringUntil('\n');   //присвоить massstring всё что было послано в порт
flagmassset=1;   //поднять флажок
}
if (flagmassset==1) {      //если флажок поднят (приняли значение в порт)
Serial.println(massstring);   //написать введённое значение
Serial.println(" ");
massstring.toCharArray(masschar,sizeof(masschar));   //перевод значения в float (десятичная дробь)
mass=atof(masschar)/1000;                             //всё ещё перевод
flagmass=0;                     //опустить все флажки    
flagmassset=0;
initial=0; 
set=0;                //показать приветственную надпись
}
}
 
if (gap1!=0 && gap2!=0 && gap2>gap1 && set==0) {        //если пуля прошла оба датчика в 0 режиме
velocity=(1000000*(dist)/(gap2-gap1));         //вычисление скорости как расстояние/время
energy=velocity*velocity*mass/2;              //вычисление энергии
Serial.print("Shot #");                        
Serial.println(n);                                 //вывод номера выстрела
Serial.print("Speed: ");    
Serial.println(velocity);                          //вывод скорости в COM
Serial.print("Energy: ");    
Serial.println(energy);                          //вывод энергии в COM
Serial.println(" "); 
gap1=0;                                   //сброс значений
gap2=0;
n++;                                      //номер выстрела +1
}
 
if (micros()-gap1>1000000 && gap1!=0 && set!=1) { // (если пуля прошла первый датчик) И (прошла уже 1 секунда, а второй датчик не тронут)
Serial.println("FAIL"); //выдаёт FAIL через 1 секунду, если пуля прошла через первый датчик, а через второй нет
gap1=0;
gap2=0;
}
 
if (set==3) {          //режим скорострельности
if (rapidflag==0) {
Serial.println("Welcome to the rapidity test!");
Serial.println("");
rapidflag=1;          //показать надпись один раз
}
if (gap1!=0) {         //если пролетели через первый датчик
rapidtime=60/((float)(gap1-lastshot)/1000000);     //расчет скорострельности выстр/мин
lastshot=gap1;                                   //запомнить время между выстрелами
Serial.print("Rapidity (shot/min): ");    //вывод
Serial.println(rapidtime);
Serial.println(" ");
gap1=0;
}
}
delay(200);    //задержка для стабильности
}
DIYMan
DIYMan аватар
Offline
Зарегистрирован: 23.11.2015

Вот оно, короче: http://alexgyver.ru/source_chron_2/

Клапауций 232
Offline
Зарегистрирован: 05.04.2016

грёбаные диверсанты.

ТС, теперь ты знаешь, кто тебе должен две дуино и вырваные годы.

Клапауций 232
Offline
Зарегистрирован: 05.04.2016

так, а где пины соединены между собой напрямую?

Joiner
Offline
Зарегистрирован: 04.09.2014

По измерению скорости пуль, вроде бы, jeka_tm специалист.

Клапауций 232
Offline
Зарегистрирован: 05.04.2016

если кто-то подумал, что резисторы в точках, отмеченных чёрными кружками, припаяны к плате, то он спалил свою дуино.

это же подтяжка входа к питанию.

Joiner
Offline
Зарегистрирован: 04.09.2014

Клапауций 232 пишет:

если кто-то подумал, что резисторы в точках, отмеченных чёрными кружками, припаяны к плате, то он спалил свою дуино.

это же подтяжка входа к питанию.

А нафига этот огород? Зачем соединены D2 и A4,    D3 и A2 ? Нельзя время посчитать по D2 и D3 ?

AlexZZZ
Offline
Зарегистрирован: 22.07.2016

В приведенном скетче нет определения ни для одного пина вообще, т.е. остаются умолчания - все пины вход...программа работает по прерываниям. Вопрос - даже если объединить входы ардуинки как можно их спалить? Скетч именно тот что внутри?

Клапауций 232
Offline
Зарегистрирован: 05.04.2016

Joiner пишет:

А нафига этот огород? Зачем соединены D2 и A4,    D3 и A2 ? Нельзя время посчитать по D2 и D3 ?

я же чёрным по русски сказал, что А4 и А2 никуда не подключены - подозреваю, что в рисовалке схем включено что-то вроде "прилипать к ближайшим пинам".

Joiner
Offline
Зарегистрирован: 04.09.2014

Клапауций 232 пишет:

Joiner пишет:

А нафига этот огород? Зачем соединены D2 и A4,    D3 и A2 ? Нельзя время посчитать по D2 и D3 ?

я же чёрным по русски сказал, что А4 и А2 никуда не подключены - подозреваю, что в рисовалке схем включено что-то вроде "прилипать к ближайшим пинам".

Посмотрел бегло скетч, там вроде analogRead() присутствует. Зачем он, если аналоговые входы не подключены? :)

Клапауций 232
Offline
Зарегистрирован: 05.04.2016

Joiner пишет:

Клапауций 232 пишет:

Joiner пишет:

А нафига этот огород? Зачем соединены D2 и A4,    D3 и A2 ? Нельзя время посчитать по D2 и D3 ?

я же чёрным по русски сказал, что А4 и А2 никуда не подключены - подозреваю, что в рисовалке схем включено что-то вроде "прилипать к ближайшим пинам".

Посмотрел бегло скетч, там вроде analogRead() присутствует. Зачем он, если аналоговые выходы не подключены? :)

беру свои слова обратно - по схеме ничего сгореть не должно.

вспомнил обвязку USBasp - ничего ведь не горит.

 

Joiner
Offline
Зарегистрирован: 04.09.2014

Клапауций 232 пишет:

........................

вспомнил обвязку USBasp - ничего ведь не горит.

Наверное это от прошивки зависит. Надо бы будет попробовать соединить два пина и на один digitalWrite(HIGH), а на другой digitalWrite(LOW). Что интересно будет?

Клапауций 232
Offline
Зарегистрирован: 05.04.2016

Joiner пишет:

Наверное это от прошивки зависит.

можно скомпилить что бы не соединялись пины, но дефолтная схема такая - возможно, связано с производительностью.

USBasp schematic

Joiner пишет:

Надо бы будет попробовать соединить два пина и на один digitalWrite(HIGH), а на другой digitalWrite(LOW). Что интересно будет?

выгорит пин, два пина, порт, весь мк - рандом.

Finist
Offline
Зарегистрирован: 30.08.2016

Все, разобрался, виновата моя криворукость при пайке ))) все работает

Клапауций 232
Offline
Зарегистрирован: 05.04.2016

все разобрались - все свободны.