1. Открываю файл с расширением '.csv'
2. Собираем в текстовую строку значения данных, разделяя их знаком ;
3. В конце строки добавляю возврат каретки '$R'.
4. Записываю строку в файл.
5. Повторяю 2-4 раз в секунду
6. Закрываю файл
7. Открываю его Excel и строю графики

Можете взять за основу мой кусок. ПЛК не Овен, но принцип аналогичный. Строка sLine формируется за несколько циклов. Вначале строки добавляется отметка даты и времени:

Код:
CASE uiState OF
	0:	IF bWrite THEN
		(*Формируем дату*)
		LineDT(dtIn := M_RTC.CDT);
		sLine := UINT_TO_STRING(LineDT.uDay);
		sLine := CONCAT(sLine,'-');
		sLine := CONCAT(sLine, UINT_TO_STRING(LineDT.uMon));
		sLine := CONCAT(sLine,'-');
		sLine := CONCAT(sLine, UINT_TO_STRING(LineDT.uYear));
		sLine := CONCAT(sLine,';');
		sLine := CONCAT(sLine, UINT_TO_STRING(LineDT.uHr));
		sLine := CONCAT(sLine,':');
		sLine := CONCAT(sLine, UINT_TO_STRING(LineDT.uMin));
		sLine := CONCAT(sLine,':');
		sLine := CONCAT(sLine, UINT_TO_STRING(LineDT.uSec));
		sLine := CONCAT(sLine,';');

		uiState := 1;
		END_IF
		bWrite := FALSE;

	1:	(*Добавим данные*)
		iPar := TRUNC(T_kv);
		sLine := CONCAT(sLine, INT_TO_STRING(iPar));
		sLine := CONCAT(sLine,',');
		iPar := TRUNC((T_kv-iPar)*10);
		sLine := CONCAT(sLine, INT_TO_STRING(iPar));
		sLine := CONCAT(sLine,';');

		iPar := TRUNC(HR_kv);
		sLine := CONCAT(sLine, INT_TO_STRING(iPar));
		sLine := CONCAT(sLine,',');
		iPar := TRUNC((HR_kv-iPar)*10);
		sLine := CONCAT(sLine, INT_TO_STRING(iPar));
		sLine := CONCAT(sLine,';');

		sLine := CONCAT(sLine, sComent);
		sLine := CONCAT(sLine,'$R');
		sComent := '';

		uiState := 2;

	2:   IF SysFileWrite(dwHFile, ADR(sLine), LEN(sLine)) <> 0 THEN
			uiLineCount := uiLineCount + 1;
		ELSE
			CloseFile;
		END_IF

		uiState := 0;

  ELSE uiState := 0;
  END_CASE