Ответить
  • sdfghjkl Neophyte Poster
    офлайн
    sdfghjkl Neophyte Poster

    8

    13 лет на сайте
    пользователь #401199

    Профиль
    Написать сообщение

    8
    # 7 февраля 2014 00:10

    Здравствуйте , на днях стал обладателем Arduino Uno, но столкнулся с проблемой . При загрузке примеров на Arduino Uno выскакивает в нижнем окне avrdude:stk_500_getsync() :not in sync :resp=0x00. При подключении Arduino Uno к компу лампочка L первую секунду моргает очень быстро , а затем 1 с включается 1 с выключается и так постоянно , лампочка on горит другие не горят . На компе стоит хр и Arduino 1.0.5 r2 в диспетчере устройств компьютер Arduino видит . Подскажите в чем причина опыта в программировании и работе с ардуино нет , есть неплохие идеи в этом направлении но вместо того чтоб делать проекты топчусь на одном месте .

  • metang Junior Member
    офлайн
    metang Junior Member

    81

    16 лет на сайте
    пользователь #131763

    Профиль
    Написать сообщение

    81
    # 7 февраля 2014 00:52 Редактировалось metang, 1 раз.

    В Arduino IDE правильно выбран тип Arduino?
    Для Arduino Uno должно быть как на скрине.
    Так же проверить правильность выбора com порта на котором висит Arduino. Может быть и слетевший загрузчик или хуже того - дохлый контроллер.

  • art100 Клуб Самоделкиных
    офлайн
    art100 Клуб Самоделкиных

    5069

    13 лет на сайте
    пользователь #397580

    Профиль
    Написать сообщение

    5069
    # 7 февраля 2014 08:01 Редактировалось art100, 12 раз(а).

    так как за 3 часа никто не откликнулся
    воспользовался словом интернет плюс слово минск
    сел в машину сьездил купил
    в найденном магазинчике Очередь!!!
    короче
    0.Присказка:
    arduino + одел щиток моторный Arduino Motor Shield R3
    флажком махает но моими руками спаянный щиток, а не купленный
    вон прямо из купленноого щитка в воздухе висит ULM2003-я и мотор крутит
    а красно-расфуференный щиток для показа только шо он тожа есть ещО

    1.
    Вопрос 1-ый:
    Просвятите душу заблудшую,- типа скучно мне.
    На платке моторной всего один мост для шагового мотора L298 но, -
    Но печатную Разводку,
    Делала точно Идиотка.

    Ключ 50% рабочий в z- состояние половина ключей затягивается.
    Паралельно наверх заводской идиотке я свои ключ повесил и мотором флажком махаю.
    Заявлено
    SummaryOperating
    Voltage 5V to 12V
    Motor controller L298P, Drives 2 DC motors or 1 stepper motor
    Max current 2A per channel or 4A max (with external power supply)
    Current sensing 1.65V/A
    Free running stop and brake function
    Смотрите сами на разводку:
    http://arduino.cc/en/uploads/Main/arduino_MotorShield_Rev3-schematic.pdf
    Так как правило включения ключей просты.
    затянул управлялки z-состоянием в +5в и крути мотор 40вольтами 4 амперами
    диоды всплески от индуктивности паразитной всегда мелкий arduino защитят

    Как мне кажется без резанья и перепайки платы не получится шаговиком покрутить.
    2.
    Теперь самы главный вопрос 2-ой:
    Что идти плакаться и давить:
    Arduino Motor Shield заявлено мотор шаговый 1 штука, а по факту только ШИМ для движков на постоянном напряжении получится :(
    3.
    Вопрос 3-ий "на авось":
    Иль я чего в схемке не доглядел?

    кратко стенания как-то так

    P.S.
    Не все же выскажусь

    Добавлено спустя 33 минуты 34 секунды

    dimmas375:

    art100, в барахолке объявлений навалом.

    эх кабы так
    да не так
    кучку шаговиков отобрать уже неделю ищу ЧЕМ??? - кричу я уже
    магазинчик один нашел а там очередь на 2 часа и тольком щиток выбрать не получается
    по факту все дряь какая-то эти щитки
    ну вроде кручу моторчиком 1 штука пока одним щитко-самопалом из мусорки
    бабки плачу а без паяльника тестер собрать не могу
    моторы 2 недели по всему минску собираю получается
    а их еще оттестировать

    отупели совсем - никто ничего не создает

    грустно все
    из создателей превратились в потребителей

    Или послать все на..
    Порезать купленный шилд и правльную разводку сзделать.
    Но ведь была у когго-то какая-то мысль чтоб так развести.
    Я постичь глубину мысли разводившего не могу.

    для тех кто не понял поясняю

    один чип симметричный как зеркало
    все элементарно как грабли и так "накудесить"

    Вопрос всезнаещему ALL
    Резать буренку?
    Или пойти на ферму и поплакаться что буренка молока не дает.
    Отсальные тоже ведь через ж..пу разведены.

    Как ребенку обяснять электронику буду?
    Он так и скажет дураки какие-то не буду электроникой заниматься.

    Может я чего-то все таки не понял.
    И есть в этой платке светлое доброе и прекрасное :-?

    P.S.
    о не зря сюда зашел
    и болтаю-болтаюсь здесь с 7:30 уже сколько там натикало 9:28
    базар пошол кАнкретный с предложениями в личке
    шась ешО че-нить купим :)
    может 30 000 руб на бензинчик секономим

    Круиз-контроль 88 км/ч. Радость никакая печаль.
  • DoSBoy Dogs Team
    офлайн
    DoSBoy Dogs Team

    1794

    19 лет на сайте
    пользователь #32053

    Профиль
    Написать сообщение

    1794
    # 7 февраля 2014 09:33

    art100, вас читать очень сложно. Так и не понял, что вы хотите.

    Nintendo Boy
  • art100 Клуб Самоделкиных
    офлайн
    art100 Клуб Самоделкиных

    5069

    13 лет на сайте
    пользователь #397580

    Профиль
    Написать сообщение

    5069
    # 7 февраля 2014 09:50 Редактировалось art100, 9 раз(а).
    sdfghjkl:

    Здравствуйте , на днях стал обладателем Arduino Uno

    завидую
    вчера бегал искал такую
    она вроде со старым классическим корпусом DIP atmega16 который можно вынимать вставлять паять по человечески

    в нижнем окне avrdude:stk_500_getsync() :not in sync :resp=0x00.

    вчера смог взять только некую arduino leonardo - там чип типа резет жать не ребует но и ведет себя как прости...ка то она 8 секунд доступна то уже тра..ает переферии
    сам не сразу вьехал что за косяк или чудо резето не требующее новомодное

    При подключении Arduino Uno к компу лампочка L первую секунду моргает очень быстро , а затем 1 с включается 1 с выключается и так постоянно

    это у тебя для теста работает тестовые примерам всем пример типа hellow world а называется в твоем компиляторе
    Примеры-01.basic-Blink
    если память не изменяте по умочанию на 13 ноге светодиодом моргать каждую секунду
    светодиод пралельно выведенной наружуноге уже распаян
    остальные светодиоды не помнб всегда было 2 штуки паралеьно ножкам посследовательного порта TX RX
    в от когда они моргают это момент обмена/перепрошики

    На компе стоит хр и Arduino 1.0.5 r2 в диспетчере устройств компьютер Arduino видит

    мной лично премерено MacOSX10.5leopard Ubuntu 10./dev/ttyUSB1... WindowsXPsp1...Windows7 com1..com30 на 64-битках жди косяков с дровами ком порта

    Из-за того что чистый атмега16 предохранители уже сильно утличаются от новомодных поэтому чтоб не убить и иметь защиту от дурака компилятор не шьет если не увидит правильный ответ от буутзагручика внутри

    Правильно выбери в списке марку платки и порт

    Моя чудо врде чип что-то atmega что-то ...U2 за 8 секунд после запуска успевает 2 порта поменять

    Добавлено спустя 4 минуты 39 секунд

    DoSBoy:

    art100, вас читать очень сложно. Так и не понял, что вы хотите.

    мысли
    и решения

    Резать буренку или на ферму идти :) ?

    А платка пришла и есть у вас иль в ожидании...

    Добавлено спустя 8 минут 17 секунд

    DoSBoy:

    Ребята. Я разучился паять. Припой не берётся на жало паяльника ...

    все вы правильно делаете
    просто паяльник мы использованли правильные 25вт 40вт 65вт
    жало у них были правильные Cu Cu Cu
    а теперь жало авно авно авно
    я решаю это выкидываением паяльника и походом за следующим
    вроде и смотрю но у самого уже 2 таких скопилось
    я одним только платсмасой повонять пользую

    те-же косяки с бокорезами
    вчера с мужиком в новомодном супер-гипере перед 5 метрами висящих бокорезов ходили.
    цена чтоб проводок откусить от 27 950руб до 224 850руб
    мужик очень не советовал самые дешевые брать говорит сломались прямо в руке без ничего следующие погнулись
    за дорого веры нет
    российского инструмента понятно нет - все размели

    Добавлено спустя 16 минут 24 секунды

    Jo Jonson:

    Посмотрел ценники на наших сайтах.... Интересно, это оригинальные адуины или из магазинов типа DX.COM?

    Люди - заказывайте из Китая и саму плату и комплектующие к ней - дешевле и выбор больше. Наши "бизнясмэны" три шкуры дерут.

    почему 3
    2 шкурки получается растаможка ведь всегда превышают общую минимальную +30% + прибыль 70% меньше смысла нет
    вот если бы кто тут паял пачками минимум на 30% дешевле
    и без тоорговых арендных площаедей а инет магазином + 30%
    то на -70% было бы
    все зависит от количества

    Скажу вам так
    В Минске arduino нет.
    Разовые варианты это не упрощения реализации домашней идейки а усложнение.
    Я в поднебоесной уже 2 год но сроки поставки 14-60дней и растаможка постоянная 30% засталяют бегать как ужаленный по городу и перекупать.
    Вот уже 5-ый час болтаю и жду еще предложения кому деньгу дать сегодня.

    Круиз-контроль 88 км/ч. Радость никакая печаль.
  • Misha_03 Senior Member
    офлайн
    Misha_03 Senior Member

    845

    15 лет на сайте
    пользователь #167409

    Профиль
    Написать сообщение

    845
    # 7 февраля 2014 12:07

    art100, вам уже как минимум несколько предложений поступило, в том числе и просто посоветовал где и что брать. С шаговыми двигателями не сталкивался, помочь не могу. По поводу столь раннего времени - уж извините, работа, дом. не так много времени на хобби. А по корову потом отпишите что надумали, и как решили сделать, нам будет интересно.

  • art100 Клуб Самоделкиных
    офлайн
    art100 Клуб Самоделкиных

    5069

    13 лет на сайте
    пользователь #397580

    Профиль
    Написать сообщение

    5069
    # 7 февраля 2014 12:25 Редактировалось art100, 4 раз(а).

    корову отдал обратно
    вывели из коровника телят россыпью сейчас буду выращивать и скрещивать новую корову тойже породы
    паяльник уже разогревается

    пока ~600 000руб с бензином

    2
    прошил примерчиком
    воткнул этажерочкой следующие щитки бзымянные
    махаю флажком моторчиком через всю этажерочку

    вывод
    пока платки на ура без косяков
    разогреваю осцилоскОп буду глазами электрическую силу разглядывать

    Круиз-контроль 88 км/ч. Радость никакая печаль.
  • art100 Клуб Самоделкиных
    офлайн
    art100 Клуб Самоделкиных

    5069

    13 лет на сайте
    пользователь #397580

    Профиль
    Написать сообщение

    5069
    # 7 февраля 2014 16:22 Редактировалось art100, 7 раз(а).

    ...

    Круиз-контроль 88 км/ч. Радость никакая печаль.
  • art100 Клуб Самоделкиных
    офлайн
    art100 Клуб Самоделкиных

    5069

    13 лет на сайте
    пользователь #397580

    Профиль
    Написать сообщение

    5069
    # 9 февраля 2014 14:19
    Круиз-контроль 88 км/ч. Радость никакая печаль.
  • Неизвестный кот Senior Member
    офлайн
    Неизвестный кот Senior Member

    697

    14 лет на сайте
    пользователь #231939

    Профиль

    697
    # 9 февраля 2014 22:09

    У нас где-нибудь в стране можно купить Bluetooth модуля без долгих ожиданий с Китая(от туда и я могу заказать)?

    Добавлено спустя 4 минуты 20 секунд

    Какая погрешность,как думаете, будет, если кинуть датчик LM 35 на кабель длинной 5 метров? Интересует,т.к. это не даловский цифровой помехозащищённый а аналоговый...И какой кабель лучше использовать для LM 35?

    От снайпера не убежишь!
  • Protez1999 Senior MemberАвтор темы
    офлайн
    Protez1999 Senior Member Автор темы

    9978

    16 лет на сайте
    пользователь #113845

    Профиль
    Написать сообщение

    9978
    # 9 февраля 2014 22:24

    не делая это самому трудно дать ответ

  • art100 Клуб Самоделкиных
    офлайн
    art100 Клуб Самоделкиных

    5069

    13 лет на сайте
    пользователь #397580

    Профиль
    Написать сообщение

    5069
    # 11 февраля 2014 09:13 Редактировалось art100, 6 раз(а).

    arduino - замечательный продукт :D
    Не надо ничего с логикой придумывать - все уже придумано, чтоб большим компьютером на большом мониторе выбрать и отладить логику.
    Выкидывайте пачки интеграловских безтолково-схем.
    Тупо заказываем платку Arduino
    10eur+доставка+растаможка+почтостояние 1 час (тоже самое забеги по минску/форумо-висение)
    10eur+шилд+доставка+растаможка+почтостояние 1 час (видать мне не судьба ошилдет все сразу навесным монтажом паяю)
    10eur+поездка по городу в поисках рассыпухи
    10eur - интернет услуги обучения
    700eur - персональный компьютер
    -----
    740eur

    код используем библиотечный
    если ваш шилд требует включаем #include-им шилдовую библиотеку

    (мне стандартного хватает)
    приведу чудо сложнейший код непостижимый толпами
    я всего три строчки коментариев написал
    потому как у меня при отборе отсортировались моторы с напряжениями минимальными 3в 5в 12в....с шагами 0.9 1.8 3.6
    нет какую-то у...ню пишут микрошаги забывая смысл micros
    когда мозг включи образцовым примером заставь шаговый мотор пошагать на 360 градусов в одну сторону и обратно в точку начала и все станет ясно, что у мотора шаги больше чем тебе надо

    код выделить все

    /*
    Stepper Motor Control - one revolution

    This program drives a unipolar or bipolar stepper motor.
    The motor is attached to digital pins 8 - 11 of the Arduino.

    The motor should revolve one revolution in one direction, then
    one revolution in the other direction.

    Created 11 Mar. 2007
    Modified 30 Nov. 2009
    by Tom Igoe

    */

    #include <Stepper.h>

    const int stepsPerRevolution = 200; //art100 20140210
    // 100 step * 3.6 gradus/step = 360 gradus
    // 200 step * 1.8 gradus/step = 360 gradus
    // 400 step * 0.9 gradus/step = 360 gradus

    // initialize the stepper library on pins 8 through 11:
    Stepper myStepper(stepsPerRevolution, 8,9,10,11);

    void setup() {
    // set the speed at 60 rpm:
    myStepper.setSpeed(60);
    // initialize the serial port:
    Serial.begin(9600);
    }

    void loop() {
    // step one revolution in one direction:
    Serial.println("clockwise");
    myStepper.step(stepsPerRevolution);
    delay(500);

    // step one revolution in the other direction:
    Serial.println("counterclockwise");
    myStepper.step(-stepsPerRevolution);
    delay(500);
    }

    схемы печатать безсмысленно
    типовая в моем случае схема применения H-моста L298
    В arduino не важно какой Google Mega ADK / Arduino Leonardo "замудренные" 6 ног:
    4 ноги шагового мотра
    2 ноги питания
    если мотору не хватает 5в от usb
    у меня в основном все моторы 12в захотели
    3 ногу тоже "мудрить не надо" сразу с arduino 12в на L298

    В интернете код на шаговые моторы выкладывают какие-то дебили!
    Или мне в основной попадался такой.

    Есть в компиляторе образцовый код без всякой дури arduino-исполнительное устройство. Все. Не надо изобретать велосипед.
    Если не хватило килобайт памяти - то покупаем спец шилд берущий на себя часть логики, и пример берем от производителя шилда.

    Но такого идиото-кода за 2-ое суток насмотрелся по простым вещам.
    Материться хочу.

    что-то многА букАв написал

    Добавлено спустя 38 минут 8 секунд

    вот примерчик дибила
    Задача:
    Два мотора крутить 360 градусов
    Два лазера светить импульсами
    Кнопка старта
    Кнопка выкл лазеры
    По USB все тоже самое выполнять и подтверждать заранее оговоренными символами ASCII
    Решение:
    То есть логически 4 подпрограммы и 1 main все

    а это дебил мало того что крутой EasyDrive Sheld for Stepper Motor gj 10eur+накладные расходы на каждый использовал
    так с логикой в его голове шизофрения
    конечно-же этот код вроде работает но глючит
    в коде "дебило-символы управления ASCII из запрещенной части для клавиатуры" просунул я их заменю на "дебило-символы"

    код выделить все

    ////////////////////////////////////////////////////////
    //Arduino Stepper Motor skecth listening to COM Port
    //for use with the EasyDriver 3.1
    ////////////////////////////////////////////////////////
    ...
    // Added : Pushbutton to start a single circle or to stop it while it is running
    // Added : Endswitch to get zero-value of motion
    // Added : LED enlighted while motor moves forward
    // Added : Potentiometer to controll motor speed by hand
    // Added : second EasyDriver to controll a turntable

    // For all the Easydriver v.3 product details http://schmalzhaus.com/EasyDriver/
    ...

    // Executes a reference motion towards endswitch at character "i"
    // Runs scanning circle when you send "g" to the serial port,
    // Stops scanning circle when you send "s" to the serial port,
    // Switches on light when you send "l" to the serial port,
    // Switches off light when you send "d" to the serial port,
    // Turns a turntable at 45 "дебило-символы" if you send "t" to the serial port (standard 1.8 "дебило-символы"/step), //тут этот дебил символ градуса из ASCII таблицы вытащил

    //Use this code at your own risk and have fun

    // Pins
    int val = 0; // stores the state of the BUTTON pin //дебил физическу ногу микросхемы перепутал с логической временной переменной
    int LED = 11; // names pin 9 as LED (placeholder for the laser)
    int BUTTON = 7; // names pin 7 as BUTTON
    int END = 8; // names pin 8 as the endswitch
    int LIGHT = 2; // names pin 2 as the lightswitch
    int potpin = 2; // names pin 2 as "potpin" //java не прощает болшие ии маленькие буквы если конечно это не мастдайка
    int dirpin = 3; // names pin 3 as "dirpin" -Stepperdirection laser
    int steppin = 4; // names pin 12 as "steppin" -Steppersteps laser
    int ttdir = 5; // names pin 4 as "dirpin" -Stepperdirection turntable
    int ttstep = 6; // names pin 5 as "dirpin" -Steppersteps turntable
    //variables //не переменный дебил а постоянные это откуда он variables высмотрел?
    int temp = 0; // Stores the speed value. The smaller the faster
    long range = 16000; // Stores how many steps will be made in total -Stepper laser
    int ttrange = 200; // Stores how many steps will be made in total -Stepper Turntable //в шаговый моторах логика сильно завсит от шагов мотора а у него тут шаг step1 rotation превратилось в некий TurnСтолДиапазон - дебил
    int incomingByte = 0; // for incoming serial data
    int old_val = 0;
    int state = 0;

    void setup() {
    Serial.begin(9600); // opens serial communication

    pinMode(dirpin, OUTPUT); // Sets pins to in or out modes
    pinMode(steppin, OUTPUT); //
    pinMode(LED, OUTPUT); //
    pinMode(BUTTON, INPUT); //
    pinMode(LIGHT, OUTPUT); //
    pinMode(END, INPUT); //
    pinMode(ttdir, OUTPUT); //
    pinMode(ttstep, OUTPUT); //
    }

    void loop() {
    val=digitalRead(BUTTON); // read Button input value and store it
    if ((val == HIGH) && (old_val == LOW)) {
    state = 1 - state;
    delay(10);
    }

    old_val = val;

    if (Serial.available() > 0) {
    // read the incoming byte:
    incomingByte = Serial.read();

    // say what you got:
    Serial.print("I received: "); //команды управления односимвольные A B C D E F G H в обе стороны
    //(зачем велосипед изобретать ведь когда идет обмен по USB порту толком не подсмотришь )
    // кому этот дебил пишет я принимаю, а перенос строки еще отдельной строкой накудесил
    Serial.println(incomingByte);

    }
    delay(100);

    //насписано все нормальным языком
    //если пришедшийБайт эквиалентен коду символа 108 тогда выполним
    //цифруЗапишу СВЕТ ВЫСОКО
    //пришедшийБайт обнуляем
    //конец условия
    if (incomingByte == 108) { // switches on light when "l" is sent by DAVID //а эту дурь я постигал полчаса
    digitalWrite(LIGHT, HIGH);
    incomingByte = 0;
    }

    if(incomingByte == 100) { //switches off light when "d" is sent by DAVID //велико и могуча английский языко
    digitalWrite(LIGHT, LOW);
    incomingByte = 0;
    }

    if (incomingByte == 116) { // when "t" was sent by DAVID>> turntable travel
    digitalWrite(ttdir, LOW); // Changes direction
    int i;
    delay(100);

    Serial.println("in motion"); // sends "in motion" to PC
    for (i = 0; i<ttrange+1; i++) { // pulse
    digitalWrite(ttstep, HIGH); // :
    delayMicroseconds(1300); // :
    digitalWrite(ttstep, LOW); // :
    delayMicroseconds(1300); // pulse

    if (i == ttrange) { //stop
    break;
    }
    incomingByte = 0;
    }
    }

    if (incomingByte == 105) { // when "i" was sent by DAVID>> initial travel
    digitalWrite(dirpin, LOW); // Changes direction
    int i;
    delay(100);

    Serial.println("INITIAL"); // sends "INITIAL" to PC
    for (i = 0; i<range; i++) { // pulse
    digitalWrite(steppin, HIGH); // :
    delayMicroseconds(100); // :
    digitalWrite(steppin, LOW); // :
    delayMicroseconds(100); // pulse
    int end = digitalRead (END);
    if (end == HIGH) { // endswitch
    break;
    }
    }
    }

    if ( state == 1 || incomingByte == 103) { // If button is pressed
    int i; // sets counter of pulses
    temp = 50+analogRead(potpin)*8; // reads the poti-value and sets speed
    digitalWrite(dirpin, HIGH); // should be clockwise motormovement
    delay(50);
    Serial.println("SCANNING"); // sends "SCANNING" to PC // то унего подтверждения большими буквами то маленькими дебил

    for (i = 0; i<range; i++) { // pulse
    digitalWrite(steppin, HIGH); // :
    delayMicroseconds(temp); // :
    digitalWrite(steppin, LOW); // :
    delayMicroseconds(temp); // pulse
    if (i > 100) { // Waits 100 pulses till LED switches on
    digitalWrite(LED, HIGH);
    }
    temp = 50+analogRead(potpin)*8; // reads again the poti-value and sets speed
    incomingByte = Serial.read();
    val = digitalRead (BUTTON);
    if (incomingByte == 115 || i == range-1 || val == HIGH) { // when "s" was sent by DAVID or max range>> stop and backtravel
    digitalWrite(dirpin, LOW); // Changes direction
    digitalWrite(LED, LOW); // switch off LED

    delay(100);

    Serial.println("BACK"); // sends "BACK" to PC
    for (i = 0; i<range; i++) { // pulse
    digitalWrite(steppin, HIGH); // :
    delayMicroseconds(100); // :
    digitalWrite(steppin, LOW); // :
    delayMicroseconds(100); // pulse
    int end = digitalRead (END); // reads the endswitch

    if (end == HIGH) { // stop if endswitch reached
    digitalWrite(LED, LOW); // switch off LED
    i = range;
    incomingByte = 0;
    break;
    }
    }
    }
    }
    delay(100);
    }
    val = LOW;
    incomingByte = 0;
    state = 0;
    }

    Круиз-контроль 88 км/ч. Радость никакая печаль.
  • sdfghjkl Neophyte Poster
    офлайн
    sdfghjkl Neophyte Poster

    8

    13 лет на сайте
    пользователь #401199

    Профиль
    Написать сообщение

    8
    # 11 февраля 2014 13:29
    metang:

    В Arduino IDE правильно выбран тип Arduino?
    Для Arduino Uno должно быть как на скрине.
    Так же проверить правильность выбора com порта на котором висит Arduino. Может быть и слетевший загрузчик или хуже того - дохлый контроллер.

    metang Спасибо помогло

  • art100 Клуб Самоделкиных
    офлайн
    art100 Клуб Самоделкиных

    5069

    13 лет на сайте
    пользователь #397580

    Профиль
    Написать сообщение

    5069
    # 15 февраля 2014 00:07 Редактировалось art100, 17 раз(а).

    Здравствуй art100 привет art100 :)
    Ну что ж приятно разговаривать c умным и вежливым человеком.
    Во всем согласен :)
    Не перечит.
    Не возражает.
    Даже заблуждается одинаково.

    Короче кодец
    Все взято из библиотечного движением мышки и чуток подправлено.
    Задача:
    Станок потестировать XY.
    Моторы будем считать типоразмера NEMA17
    ( это обычно шаг 1.8, тока 1.8, напряжение шага от 4в до 40в, вал 5мм, посадочные размеры квадрат 31.5 мм
    С arduino напряжением на моторы больше 12в не играться,
    - просто стабилизатор 12в-3в на логику выжжете и всю логику также
    все нормальные моторы например от древнющих дисководов TEAC прекрасно с 5 вольт шагают
    )
    Решение:
    1.бежим в хватаем последнюю 175 000 руб
    http://belchip.by/product/selected_product:v:00007865.htm
    2.в нее втыкаем последнюю 105 000 руб
    http://belchip.by/product/selected_product:v:00007887.htm
    3.покупаем классический Н-мост например L298 за 42 000 руб - точно выдержит разные индуктивные издевательства.
    4.незабываем про 8 диодов на выходе на шаговый мотор на 2-ару амперчиков всплески индуктивные сжирать.
    (сами ведь будете пальцами мотор крутить и генерировать всплески)
    100мкф и дроссель чтоб всплесками ардуину почем зря не трясти. 0$
    5.заводим паяльник 0$
    6.заводим осцилоскОп вольтОметр 0$
    7.забираем у жены, детей, внуков дата-кабель micoUSB-USB потому как это дефицит без "лопатофонов".
    8. короче
    итого:
    1 вечер и ~500 000 руб хватит.

    код выделить все

    // art100 20140214 225900 test stanok 4 buttond - 2 L298 - 2 steper motor
    #include <Stepper.h>
    const int stepConst1 = 200; // 200 steps * 1.8 step/gradus = 360 gradus // library init first for function myStepper
    const int stepConst2 = 200; // 200 steps * 1.8 step/gradus = 360 gradus
    //const int stepConst3 = 400; // 400 steps * 0.9 step/gradus = 360 gradus
    // pins init
    Stepper StepMotor1(stepConst1, 0,1,2,3); // library function
    Stepper StepMotor2(stepConst2, 4,5,6,7); // library function
    //Stepper StepMotor2(stepConst3, xaxaxa); // library function
    const int button1 = 8; // -button-gnd
    const int button2 = 9; // -button-gnd
    const int button3 = 10; // -button-gnd
    const int button4 = 11; // -button-gnd
    //const int button3 = xx; // -button-gnd
    //const int button4 = xx; // -button-gnd
    // const init
    int stepCount = 0; // init
    int button1State = 0; // init
    int button2State = 0; // init
    int button3State = 0; // init
    int button4State = 0; // init
    //int button5State = 0; // init
    //int button6State = 0; // init
    void setup() {
    StepMotor1.setSpeed(60); // set the speed at 60 rpm:
    StepMotor2.setSpeed(60); // set the speed at 60 rpm:
    // StepMotor3.setSpeed(60); // set the speed at 60 rpm:
    Serial.begin(9600); // initialize the serial port:
    pinMode(button1, INPUT_PULLUP); // init resistor+5v always buttonState = HIGH;
    pinMode(button2, INPUT_PULLUP); // init resistor+5v always buttonState = HIGH;
    pinMode(button3, INPUT_PULLUP); // init resistor+5v always buttonState = HIGH;
    pinMode(button4, INPUT_PULLUP); // init resistor+5v always buttonState = HIGH;
    // pinMode(button5, INPUT_PULLUP); // init resistor+5v always buttonState = HIGH;
    // pinMode(button6, INPUT_PULLUP); // init resistor+5v always buttonState = HIGH;
    }
    //-main----------------------------------------------------------------------
    void loop() {
    button1State = digitalRead(button1); // Read button1
    button2State = digitalRead(button2); // Read button1
    button3State = digitalRead(button3); // Read button1
    button4State = digitalRead(button4); // Read button1
    // button5State = digitalRead(button5); // Read button1
    // button6State = digitalRead(button6); // Read button1

    if(button1State == LOW){ Serial.println("button1 press" ); StepMotor1.step(+1); }//StepMotor.step( stepConst);// 1oborot,circle }
    if(button2State == LOW){ Serial.println("button2 press" ); StepMotor1.step(-1); }//StepMotor.step(-stepConst);// 1oborot,circle }

    if(button3State == LOW){ Serial.println("button3 press" ); StepMotor2.step(+1); }
    if(button4State == LOW){ Serial.println("button4 press" ); StepMotor2.step(-1); }

    // if(button5State == LOW){ Serial.println("button5 press" ); StepMotor3.step(+1); }
    // if(button6State == LOW){ Serial.println("button6 press" ); StepMotor3.step(-1); }

    // delay(500);
    button1State = HIGH;
    button2State = HIGH;
    button3State = HIGH;
    button4State = HIGH;
    // button5State = HIGH;
    // button6State = HIGH;
    }

    Код я думаю понятно на 3 мотора XYZ.
    Ног на мелкой ардуинке не хватило. :-?
    Я подумал проще 1-им мотором помучаю оборудование.
    Прямо на ходу перетыкать моторы проблемы не вижу:
    1. за дросселем логику спрятал
    2. диодами открытые ключи Н-моста защитил.
    Хоть генерируй шаговым мотором электроенергию.

    Вопрос:
    Аналоговые ноги A0 A1 A2 A3 A4 A5 можно заставить быть цифровыми входами для кнопок и резисторы в 5в затянуть?
    в стиле
    pinMode( A0, INPUT_PULLUP);
    компилятор не ругается
    боюсь в цап какую-нибудь злую электрическую силу засунуть
    рядом 12 вольт скачет еще

    P.S. кнопки в http://belchip.by дрянь короконогая, вываливаются.
    У меня такие-же кнопки которым 20 лет которые прекрасно своими чуть длиньше ногами в ардуинку втыкаются.
    На фото свежие новомодные пришлось паяльником пропаиваться.

    Главная мысль.
    Корпуса с ногами которые можно еще паять ноги длинные + шаг 2.54 делают для того, чтобы макетировать было легче.
    Только не надо изобретать велосипед.
    Просто возьмите микросхему в руки и представьте как вы соедините ноги по заводскому datasheet.
    90% ног соединяться по наикратчайшему пути.

    Наблюдаю, что молодежи об этом никто не рассказывает.
    Начинают тратить массу времени на идиотские авторазводчики, и в связи с затягиванием времени забрасывают работу.
    Например: ног много, а "щитки" в воздухе собираются сразу 4 шт всего за 4 часа!!!
    с покушать + поболеть за биатлон нашу Домрачеву.

    Это два моста сразу с 16 диодами размера 0805, 2-му кандерами, 300мкф 2-мя дросселями.
    Мне к ним душа не легла, - я и одним обойдусь почему писал выше.

    Круиз-контроль 88 км/ч. Радость никакая печаль.
  • Protez1999 Senior MemberАвтор темы
    офлайн
    Protez1999 Senior Member Автор темы

    9978

    16 лет на сайте
    пользователь #113845

    Профиль
    Написать сообщение

    9978
    # 15 февраля 2014 08:13

    кнопки заставить можно

  • art100 Клуб Самоделкиных
    офлайн
    art100 Клуб Самоделкиных

    5069

    13 лет на сайте
    пользователь #397580

    Профиль
    Написать сообщение

    5069
    # 16 февраля 2014 01:47 Редактировалось art100, 1 раз.
    Protez1999:

    кнопки заставить можно

    спасибо
    пойду посплю, а завтра ...
    возможно уже кнопок буду добавлять
    И вам спокойной ночи желаю. :P

    смотрю тока не более по пол ампера моторы хотят * 5 = 2.5 ампера
    блок питания от нотебука смотрю

    Круиз-контроль 88 км/ч. Радость никакая печаль.
  • art100 Клуб Самоделкиных
    офлайн
    art100 Клуб Самоделкиных

    5069

    13 лет на сайте
    пользователь #397580

    Профиль
    Написать сообщение

    5069
    # 17 февраля 2014 19:11 Редактировалось art100, 1 раз.
    Protez1999:

    кнопки заставить можно

    где тут тебе плюсы минусы косинусы поставить
    короче спасибо
    выкинул поправил идиотокод и выкуныл всю поляну резисторов
    кино смотри тыкается кнопка понимаешь-ли пять секунд в формате 3gp
    на макетке ни одного резистора у кнопок не осталось

    Круиз-контроль 88 км/ч. Радость никакая печаль.
  • art100 Клуб Самоделкиных
    офлайн
    art100 Клуб Самоделкиных

    5069

    13 лет на сайте
    пользователь #397580

    Профиль
    Написать сообщение

    5069
    # 18 февраля 2014 19:04 Редактировалось art100, 5 раз(а).

    ардуиноводы
    такой стил пойдет?
    или я только один широкоформатный нотебук 1380 точек имею?

    код выделить все

    //art100 20140217 for scanner - COM Port- Arduino - liserline - EasyDriver 3.1/L298 -Stepper Motor(1.8 gradus=1 step) example
    //"g" steptablestart scanning turntable circle 360 gradus or button is click laser red 2 min
    //"s" stop scanning or button is clicked during circle
    // potentiometer motor speed
    #include <Stepper.h> //for stepper chip L298
    //const for myStepper library first
    const int stepsmotor1 = 200; // *1.8gradus/step = 360 gradus for stepper chip L298
    const int stepsmotor2 = 200; // *1.8gradus/step = 360 gradus for stepper chip L298
    Stepper myStepper1(stepsmotor1, A1,A2,A3,A4); // -L298-motor
    Stepper myStepper2(stepsmotor2, 10,11,12,13); // -L298-motor
    //pins
    //serial 0
    //serial 1
    int motortabledire001 = 2; // 1 EasyDriver table
    int motortablestep001 = 3; // 1 EasyDriver
    int motorlaserdire001 = 4; // 1 EasyDriver laser
    int motorlaserstep001 = 5; // 1 EasyDriver
    int laserlinegre00001 = 6; // transistor
    int laserlinered00001 = 7; // transistor
    int buttonstartstop02 = 8; // button2
    int buttonstartstop01 = 9; // button1
    int potmotorstepspeed =A0; // 10k potenciometr
    //int buttonstartstop03 =10; // button1 test
    //int led11 =11; // test
    //int led12 =12; // test
    //int led13 =13; // test led on board always
    //constant
    int tempspeed = 0; //
    long steplaser = 200; //180gradus 16000; 360 gradusa 1 step =1.8 gradusa 400 step =0.9 gradusa 200 step =1.8 gradusa 100 step =3.6 gradusa
    long steptable = 200; //180gradus 16000; 360 gradusa 1 step =1.8 gradusa 400 step =0.9 gradusa 200 step =1.8 gradusa 100 step =3.6 gradusa
    int commandserial = 0; //
    void setup() {
    Serial.begin(9600); // open COM Port
    pinMode(motorlaserdire001,OUTPUT);
    pinMode(motorlaserstep001,OUTPUT);
    pinMode(motortabledire001,OUTPUT);
    pinMode(motortablestep001,OUTPUT);
    pinMode(laserlinegre00001,OUTPUT);
    pinMode(laserlinered00001,OUTPUT);
    pinMode(buttonstartstop01,INPUT_PULLUP); // за это отдельное спасибо Протезу столько дури на плате выкинул
    pinMode(buttonstartstop02,INPUT_PULLUP);
    // pinMode(buttonstartstop03,INPUT_PULLUP);
    // pinMode(led11, OUTPUT);
    // pinMode(led12, OUTPUT);
    // pinMode(led13, OUTPUT);
    myStepper1.setSpeed(60); // 60 rpm
    myStepper2.setSpeed(60); // 60 rpm
    }
    //====================================================================
    void loop() {
    commandserial = 0;

    if (commandserial == 103 || digitalRead(buttonstartstop01)==LOW) { // "go" --------------------
    int i; // sets counter of pulses
    Serial.print("command received:");
    Serial.print(commandserial);
    Serial.print(";");
    Serial.print("val motor step speed:");
    Serial.print(tempspeed);
    Serial.println(";");//
    tempspeed = 50+analogRead(potmotorstepspeed)*8; //
    digitalWrite(motorlaserdire001, HIGH); // turn follow
    // delay(1000);
    Serial.println("SCANNING"); // sends "SCANNING" to PC
    for (i=0; i<steplaser; i++) { // 200 //pulse 16000 bred debil
    digitalWrite(motorlaserstep001, HIGH);
    delayMicroseconds(tempspeed);
    digitalWrite(motorlaserstep001, LOW);
    delayMicroseconds(tempspeed); // laser follow
    if(i>10){ digitalWrite(laserlinered00001,HIGH); } // laser on
    if (commandserial == 115 || digitalRead(buttonstartstop01)==LOW || i==steplaser-1) { //"stop"
    digitalWrite(laserlinered00001, LOW); // laser off
    digitalWrite(motorlaserdire001, LOW); // laser return
    delay(1000);
    Serial.println("BACK"); // sends "BACK" to PC
    for (i = 0; i<steplaser; i++) { // pulse 16000
    digitalWrite(motorlaserstep001, HIGH);
    delayMicroseconds(tempspeed);
    digitalWrite(motorlaserstep001, LOW);
    delayMicroseconds(tempspeed); // laser return
    }
    }
    }
    delay(100);
    }//------------------------------------------------------------------------------

    }

    да уж
    в форумном окне все поехало :(
    это из выше опубликованного кода выкинуто вся дурь
    оставленная живая логика
    добавлено масса контрольных светодиодов кнопок
    кода добавлено для другого типа моторов
    чтоб помотреть в самы дешевый arduino c 8 килобайтами влезет - легко 7 килобайт влетят

    Круиз-контроль 88 км/ч. Радость никакая печаль.
  • Неизвестный кот Senior Member
    офлайн
    Неизвестный кот Senior Member

    1353

    19 лет на сайте
    пользователь #36237

    Профиль

    1353
    # 18 февраля 2014 19:39
    DoSBoy:

    Я-т осфоткаю, но что вы там увидите. Жало медное. Напильником счищаю до чистой меди без окисла. Грею - темнет; с флюсом темнеет медленнее. Но независимо от того есть флюс на жале или нет, припой скатывается.

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

  • art100 Клуб Самоделкиных
    офлайн
    art100 Клуб Самоделкиных

    5069

    13 лет на сайте
    пользователь #397580

    Профиль
    Написать сообщение

    5069
    # 18 февраля 2014 20:46 Редактировалось art100, 4 раз(а).

    ...

    Круиз-контроль 88 км/ч. Радость никакая печаль.