Форум обсуждения систем  

Вернуться   Форум обсуждения систем "Умный дом", проектов Ардуино, OpenWRT и других DIY устройств > Форум умного дома > Сделай сам > ЧПУ, 3D принтеры, CNC

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 01.04.2014, 15:24   #11
Murkur
Member
 
Регистрация: 13.12.2013
Сообщений: 50
Вес репутации: 0
Murkur is an unknown quantity at this point
По умолчанию Re: Станок для сетки Рабица

Цитата:
Сообщение от Admin Посмотреть сообщение
Скорее всего Вы перепутали T1 с T2 ? Поменяйте их местами
Это ножки симистора?
Murkur вне форума   Ответить с цитированием
Старый 01.04.2014, 15:25   #12
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9823
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию Re: Станок для сетки Рабица

Да.
Admin вне форума   Ответить с цитированием
Старый 01.04.2014, 19:32   #13
Murkur
Member
 
Регистрация: 13.12.2013
Сообщений: 50
Вес репутации: 0
Murkur is an unknown quantity at this point
По умолчанию Re: Станок для сетки Рабица

Подключил симистор по даташиту и теперь на всех ножках 220В даже без управляющего сигнала. Так должно быть или это уже вылетел симистор?
Murkur вне форума   Ответить с цитированием
Старый 01.04.2014, 20:01   #14
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9823
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию Re: Станок для сетки Рабица

Назовите марку оптрона
Admin вне форума   Ответить с цитированием
Старый 01.04.2014, 20:26   #15
Murkur
Member
 
Регистрация: 13.12.2013
Сообщений: 50
Вес репутации: 0
Murkur is an unknown quantity at this point
По умолчанию Re: Станок для сетки Рабица

Оптрон MOC3062, симистор BT139-600E. Проверил симистор - он нормальный.
Murkur вне форума   Ответить с цитированием
Старый 01.04.2014, 21:38   #16
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9823
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию Re: Станок для сетки Рабица

Если все правильно подключено, то должно работать
Admin вне форума   Ответить с цитированием
Старый 03.04.2014, 18:39   #17
Murkur
Member
 
Регистрация: 13.12.2013
Сообщений: 50
Вес репутации: 0
Murkur is an unknown quantity at this point
По умолчанию Re: Станок для сетки Рабица

Да, всё таки ножки симистора перепутал Admin, может подскажешь ещё по коду для скетча? У меня датчик холла, через который проходит металлическая пластина считает обороты двигателя.

PHP код:
do 
        {
          if (
digitalRead(HallSensorIn) == HIGH
         {
          
Round_counter++;                    // Считаем нужное кол-во витков
          
delay (500);
         }
        } while (
Round_counter 10); 
(Round_counter - счётчик витков, HallSensorIn - сигнал от датчика Холла)

И когда пластина останавливается перед датчиком, то счётчик продолжает считать обороты. Как сделать так, чтобы датчик считал только один оборот, даже когда пластина остановилась в поле датчика?
Murkur вне форума   Ответить с цитированием
Старый 03.04.2014, 18:48   #18
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9823
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию Re: Станок для сетки Рабица

Можно использовать прерывания
attachInterrupt(0, My_function, HIGH);

PHP код:
HIGH прерывание вызываетсякогда в порту HIGH
LOW 
прерывание вызываетсякогда в порту LOW
CHANGE 
прерывание вызывается при смене значения в портус LOW на HIGH и наоборот с HIGH на LOW
RISING 
прерывание вызывается только при смене значения в порту с LOW на HIGH
FALLING 
прерывание вызывается только при смене значения в порту с HIGH на LOW 
Нажмите на изображение для увеличения
Название: attech.png
Просмотров: 311
Размер:	8.6 Кб
ID:	1661
Admin вне форума   Ответить с цитированием
Старый 04.04.2014, 13:49   #19
Murkur
Member
 
Регистрация: 13.12.2013
Сообщений: 50
Вес репутации: 0
Murkur is an unknown quantity at this point
По умолчанию Re: Станок для сетки Рабица

Сделал счётчик на прерываниях по изменению состояния датчика, но считает в 2 раза больше, чем нужно, тоесть, по одному импульсу на каждое изменение статуса датчика. Как сделать, чтобы оно считало только один импульс?

PHP код:
 #include <LiquidCrystal.h>   // include LCD library
 
 
unsigned long Round_counter 0//счетчик количества витков
 
 
int p2=20// Количество витков
 
int buttonInt 2;
 
volatile int state LOW;
 
 
LiquidCrystal lcd89456);   

void setup() {
  
  
Round_counter p2;
  
 
// attachInterrupt(buttonInt,HallSens,HIGH); // Параметры прерывания для датчика Холла
  
  
pinMode(pinOUTPUT);              // порт как выход
  
digitalWrite(pinLOW);
  
attachInterrupt(2HallSensHIGH); // привязываем 2-е прерывание к функции HallSens()
  
  
lcd.begin16);
    
delay (100);
    
lcd.clear();
}

 
void HallSens()
{
  
state = !state;                    // меняем значение на противоположное
  
Round_counter--; 
}

void loop() {
 
  
digitalWrite(pinstate);          // выводим state 
  
delay(50);
     
  
lcd.setCursor5);
  
lcd.print( Round_counter );
  
lcd.print( "   " ); 
  if (
Round_counter >= p2Round_counter 0;
  


Последний раз редактировалось Murkur; 04.04.2014 в 14:37.
Murkur вне форума   Ответить с цитированием
Старый 04.04.2014, 20:53   #20
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9823
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию Re: Станок для сетки Рабица

Попробуйте вызывать обработчик прерывания по RISING

И еще нужно указать volatile
volatile unsigned long Round_counter = 0;

Для чего такой большой счетчик? 256 не хватит? Или в крайнем случаи 65536
Admin вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 3 (пользователей: 0 , гостей: 3)
 

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 02:30. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Яндекс.Метрика