Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?

Официальный форум Simple-Scada.

Просмотр сообщений

В этом разделе можно просмотреть все сообщения, сделанные этим пользователем.


Сообщения - Brandon_heat

Страницы: [1]
1
Так все с кнопкой получилось, спасибо. но раз уж тут пошло обсуждение:) вот такой еще вопрос ... есть ФБ под названием таблица... нет ли какой-нибудь хитрой функции или процедуры что бы содержимое записывать в файл и соответственно все это дело потом в таблицу читать. вот для чего это надо... в файле будет так называемая циклограмма (последовательность перемещения тележки по точкам) при запуске скады , из файла загружается циклограмма в таблицу ну и по этой таблице тележка потом едет. и сюда же еще вопрос... можно как то пустую таблицу при запущенной скаде заполнять, а то я ее заполняю в режиме программирования, но я хотел бы что бы оператор самостоятельно забивал движение такое какое ему нужно. спасибо.

2
Спасибо, попробую, и вот еще какой вопрос, с секундным циклом вроде все получилось, но не могу понять как сделать так что бы секундный цикл запускался только при нажатие на кнопку, (почему то секундный цикл работает прям при загрузке самой формы , основного окна и не останавливается никак) ну и по окончании выполнения цикла или когда цикл переберет все элементы таблицы этот скрипт останавливался и отжимал кнопку обратно. спасибо.

3
Спасибо за совет, попробую в секундном цикле . а задача вот какая, попробую ее объяснить и небольшую схемку от руки начерчу.
Есть погрузчик, он катается туда сюда по рельсам. у этого погрузчика есть 4 точки остановки. 0,1,2,3. двигатель погрузчика связан с ПЛК в котором доезд до каждой точки строго описан, теперь мне нужно из скада системы только отправлять на плк номера точек куда нужно ехать, т.е. есть на странице допустим вкладка с табличкой, в эту табличку я записываю определенный маршрут , допустим -> в точку 3, после в точку 2, после в точку 0, после в точку 1 , если коротко то 3, 2,0,1. и все нажимаю кнопку и запускаю цикл из таблицы считывается точка отправляется в плк , с плк на частотник и погрузчик поехал до точки 3, пока в точку 3 он не приехал и пока статус переменной допустим rabota = TRUE, тоесть погрузчик еще едет следующее значение мы на плк не посылаем, как только погрузчик доехал новое значение из скада системы отправляется на плк, и так до конца таблицы. загвоздка у меня вот в чем была, по таблице я худо бедно пробегаюсь и даже на опц сервер значения эти отправляю, но параллельно значение запуска (переменная pusk_opc которая равна FALSE, что бы погрузчик поехал ее надо изменить на TRUE, погрузчик трогается и переменная автоматом выставляется на FALSE опять) не проходит , как будто опц одновременно сигнал получает и запуск не делает, вот я и хотел бы разделить запись точки и запуск секундной паузой что бы записи переменных не накладывались друг на друга.

4
именно такой код я нашел на форуме , сделал его, но мне приходится выставлять интервал хотя бы 10000 иначе все пролетает очень быстро. и я немного не понимаю +1 к числу типа integer это разве одна секунда? не вижу тут параметров какой нибудь структуры типа time или вроде того. спасибо.

5
Доброго дня, подскажите такой вопрос, всю голову уже изломал, нужно сделать просто задержку между действиями (например между перебором значений из таблицы) задержка 1-3 секунды не суть важно, вот такой у меня код... разные если честно пробовал уже но ни один результата не дает
Код: (delphi)
var
  vrTimer: TM_Variable;
  a: integer;
  i: integer;
  aSeconds: Int64;
begin
  a := Table1.RowCount;    // ПОЛУЧАЕТ КОЛ-ВО ЗНАЧЕНИЙ В ТАБЛИЦЕ
  i := 1;      // ТУТ ИЛИ 0 ИЛИ 1
  while i < a do
  begin
    Text1.Text := IntToStr(i);   // ВЫВОДИМ ЗНАЧЕНИЕ В ПОЛЕ ТЕКСТ
    vrTimer.Value := now;    // ЛОВИМ ЗНАЧЕНИЕ СЕЙЧАС ВО ВРЕМЕНИ
    aSeconds := SecondsBetween(now, vrTimer.AsDateTime);   // ЗДЕСЬ ВРОДЕ КАК РАЗНИЦА ПО ВРЕМЕНИ
         
    if aSeconds >= 2 then  // ЕСЛИ ПРОШЛО 2 СЕКУНДЫ ТО ВЫПОЛНЯЕМ
    begin
      i := i+1;
      vrTimer.Value := now;  // И ЗАНОВО ОБНУЛЯЕМ ТАЙМЕР
    end;
  end;
end.
наверно что то не так делаю. спасибо за помощь.

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

Страницы: [1]