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

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

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 26.12.2014, 20:58   #1
Рад
Junior Member
 
Регистрация: 26.12.2014
Сообщений: 1
Вес репутации: 0
Рад is an unknown quantity at this point
По умолчанию Удалённый мониторинг

написал код для измерения тока и напряжения и вывода на дисп 16х2 помогите дописать чтоб выполнить все условия проекта
пока хоть набросать чтоб с браузера мож было видеть как все работает

1. Подключение линии Л1 ,Л2(контрольные линии) производится через оптрон А9пин-линия1 А10пин-линия2 (оптопара KPC354NT0B + силовой мосфет) макс напряжение для открытия оптопары 1.4v вот про него всё http://www.cosmo-ic.com/object/products/KPC354NT.pdf
2. Измерение тока с линии 1 и 2 снимается с датчиков тока типа ACS712 подключенных к А9пин-линия1 А10пин-линия2
3. Задаётся определенный ток потребления(2А на канал), при изменении его в меньшую сторону порядка 0,5А на 22пин(для первой линии) и 24пин(для второй линии) формируется лог. 1 (данное задание работает только при лог.0 на 49 пине)
4. Датчик контроля сетевого напряжения вход на А8 пине 220в в ББП ( делитель) , при понижении напряжения до 190в формирует сигналы на 52ом и 53ем пине ((цикличное открытия и закрытия оптронов( 1сек открыто 2 сек закрыто) и формирует лог. 1 на 49пине при этом отменятся команда 3 . Как напряжение достигает >= 190в на 49 пине лог.1 сменяется на лог.0 и задание 3 работает а задание 4 отменяется
5. Все данный L1-ток L2-ток V-напряжение ( если нет V-error) выводится на жк дисплей 16х2
6. Все данные L1-ток L2-ток V-напряжение ( если нет V-error) выводится по USB на мониторинг порта(лучше окно )

выводы где формируется лог.1 лог.0 22, 24, 49 пины подключаются к блоку реле с НРК для подключения к "сухим контактам"

пины в проекте и в коде отличаются это пока пробую просто

в наличии есть W5100 MEGA2650 ну и датчики

PHP код:
#include <LiquidCrystal.h>

LiquidCrystal lcd(505248,46,44,42);

float vout 0.0;
float V1 0.0;
float R1 100000.0
float R2 10000.0
int value 0;


void setup()
{
  
lcd.begin(162); //инициализация LCD 1602
}

void loop ()  
 {

float L1 0;
for(
int i 01i++) {
L1 L1 + (.0264 analogRead(A0) -13.51);

float L2 0;
for(
int i 01i++) {
L2 L2 + (.0264 analogRead(A1) -13.51);

value analogRead(A2);
   
vout = (value 5.0) / 1024.0
   
V1 vout / (R2/(R1+R2)); 
   if (
V1<0.09) {
   
V1=0.0;

delay(1);
}
{


  
lcd.setCursor(0,1);
  
lcd.print(V1);
  
lcd.print(" ");
  
lcd.setCursor(5,1) ;
  
lcd.print("V");

  
lcd.setCursor(11,0) ;
  
lcd.print(L1);
  
lcd.print(" ");
  
lcd.setCursor(8,0);
  
lcd.print("L1");
  
   
lcd.setCursor(11,1) ;
  
lcd.print(L2);
  
lcd.print(" ");
  
lcd.setCursor(8,1);
  
lcd.print("L2");
   
  
delay(900);//задержка-обновление экрана 
}
}
}

Рад вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

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

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

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


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


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