Автоматическая качалка для кроватки

olegovich80
Offline
Зарегистрирован: 07.01.2017

Доброго времени суток, уважаемые форумчане.

Хочу поделиться мини проектом.

Искал в нете схемы автоматических качалок для кроваток с маятником.

С двигателем отметались сразу из за жужжания мотора.

С электромагнитом понравились, но самая распространенная на транзисторе и диоде не заработала.

Есть в продаже на электромагните с пультом управления, но стоит она от 6000 деревянных.

Решено было методом научного тыка соорудить свою.

Итого, порывшись по углам, нашел катушку с 0.35 медным проводом, ардуинку, оптический датчик, реле, магнит и блоки питания.

написал скетч с включением реле по сигналу датчика. 

После срабатывания датчика выдерживается 15 мс, до момента включения катушки электромагнита. Время работы электромагнита - 150 мс за цикл.

[code]
 
int sense = 2;
 
int magnet = 3;
 
 
 
void setup() {
 
  pinMode(magnet, OUTPUT);
 
  pinMode(sense, INPUT);
 
 
  Serial.begin(57600);
 
}
 
void loop() {
 
 
  if (digitalRead(sense) == HIGH) {
    delay(15);
    digitalWrite(magnet, HIGH);
    delay(150);
    digitalWrite(magnet, LOW);
    Serial.println(sense);
    Serial.println(magnet);
    
 
  }
 
  else {
 
 
 
  }
 
}
[/code]
 
катушку намотал двойным проводом 0.35. количество витков не помню, но делал исходя из того, что силовой блок питания у меня 48 вольт 1 ампер, соответственно сопротивление катушки должно было быть от 48 Ом. У меня вышло 54 Ома и замечательно работает. В качестве сердечника взял болт М8х50 и накрутил на него гаек (что бы потолще был) высота катушки у меня - 30 мм, диаметр получился около 70 мм
Язычек для оптического датчика вырезал из жестяной банки и приклеил его к подвижной части кроватки.
К этой же части прикрутил неодимовый магнит диаметром 20 мм и высотой 10 мм. - его вполне хватает.
Все собрал и вуаля - работает.
 
в следующем скетче прописал время работы качалки и разную силу укачивания (4 скорости). Сила укачивания определяется длинной импульса срабатывания электромагнита.
 
Запускается качалка с одной из 4-х кнопок
 
[code]
 
int sense = 2;
 
int magnet = 8;
 
int speed1 = 3;
 
int speed2 = 4;
 
int speed3 = 5;
 
int speed4 = 6;
 
int stop1 = 7;
 
int x = 0;
 
void setup() {
 
  pinMode(magnet, OUTPUT);
 
  pinMode(sense, INPUT);
 
  pinMode(speed1, INPUT);
 
  pinMode(speed2, INPUT);
 
  pinMode(speed3, INPUT);
 
  pinMode(speed4, INPUT);
 
  Serial.begin(57600);
 
}
 
void loop() {
 
 
 
  if (digitalRead(speed1) == HIGH)
 
  {
 
    while (x < 1800) {
      if (digitalRead(sense) == HIGH) {
        delay(15);
        digitalWrite(magnet, HIGH);
        delay(50);
        digitalWrite(magnet, LOW);
        Serial.println(sense);
        Serial.println(magnet);
        Serial.println(speed1);
 
      }
 
      else {
 
 
 
      }
      x++;
    }
  }
 
 
 
  else if (digitalRead(speed2) == HIGH)
 
 
  {
 
    while (x < 1800) {
      if (digitalRead(sense) == HIGH) {
        delay(15);
        digitalWrite(magnet, HIGH);
        delay(100);
        digitalWrite(magnet, LOW);
        Serial.println(sense);
        Serial.println(magnet);
        Serial.println(speed2);
 
      }
 
      else {
 
 
 
      }
      x++;
    }
  }
 
 
 
  else if (digitalRead(speed3) == HIGH)
 
 
  {
 
    while (x < 1800) {
      if (digitalRead(sense) == HIGH) {
        delay(15);
        digitalWrite(magnet, HIGH);
        delay(150);
        digitalWrite(magnet, LOW);
        Serial.println(sense);
        Serial.println(magnet);
        Serial.println(speed3);
 
      }
 
      else {
 
 
 
      }
      x++;
    }
  }
 
 
 
  else if (digitalRead(speed4) == HIGH)
 
 
  {
 
    while (x < 1800) {
      if (digitalRead(sense) == HIGH) {
        delay(15);
        digitalWrite(magnet, HIGH);
        delay(200);
        digitalWrite(magnet, LOW);
        Serial.println(sense);
        Serial.println(magnet);
        Serial.println(speed4);
 
      }
 
      else {
 
 
 
      }
      x++;
    }
  }
 
 
}
[/code]
 
Реле висит на 8 контакте, датчик на 2, кнопки скоростей с 3 по 6. Планировалось сделать кнопку остановки, которая прописана на 7 контакте, но пока не вписал.

 

olegovich80
Offline
Зарегистрирован: 07.01.2017

вот оно

tekagi
tekagi аватар
Offline
Зарегистрирован: 07.10.2016

Почему реле, а не полевик? Постоянное щёлканье лучше жужжания двигателя? ) Да и подгорать контакты будут на индуктивной нагрузке.
На фото нич-чего не понятно, такие проекты лучше в видео показывать.

olegovich80
Offline
Зарегистрирован: 07.01.2017

Реле для проверки поставил.

Хочу твердотелку воткнуть.

По поводу фото - сей девайс под кроватью стоит и фоткать очень неудобно. Видое записал, но как его тут разместить ?

tekagi
tekagi аватар
Offline
Зарегистрирован: 07.10.2016

К примеру на ютуб, а сюда ссылку. Или через облако.

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

А осуществлялась ли проверка данной установки на соответствие санитарно-гигиеническим требованиям по уровню электромагнитного излучения?

Или ребенка не жалко?

Baks
Baks аватар
Offline
Зарегистрирован: 11.01.2016

andriano пишет:

А осуществлялась ли проверка данной установки на соответствие санитарно-гигиеническим требованиям по уровню электромагнитного излучения?

Или ребенка не жалко?

приглядитесь внемательнее там белая простынке постелена на кроватке, так что не приставайте с глупостями!

эл.магнитного везде хватает.....

а автор молодец и + ему за старание

asfalt
Offline
Зарегистрирован: 03.07.2017

А каким образом подключили бифилярную катушку к реле?

olegovich80
Offline
Зарегистрирован: 07.01.2017

у меня 2 конца начала и 2 конца конца. :) белиберда получилась :) на самом деле нужно было мотать катушку одинарным проводом. просто двойной уже был сделан... поэтому двойным.

asfalt
Offline
Зарегистрирован: 03.07.2017

Получается что электромагнит притягивает к себе неодимовый?