Here's a RAPID solution, however it does not upload remotely.
If you have multi-tasking you can code a timer, or use time arithmetic.
MODULE AutoBackup
PROC main()
Reset vdo_BackupSignal;
nBackupTimer:=0;
WHILE nBackupTimer<86399 DO
WaitTime 1;
Incr nBackupTimer;
ENDWHILE
Set vdo_BackupSignal;
WaitTime 1;
Reset vdo_BackupSignal;
Incr nAutoBackups;
ErrWrite\W,"Creating backup","";
ENDPROC
ENDMODULE
MODULE AutoBackupData(SYSMODULE)
!
TASK PERS num nAutoBackups:=0;
TASK PERS num nBackupTimer:=86390;
!
ENDMODULE
#
EIO_SIGNAL:
-Name "vdi_BackupSignal" -SignalType "DI" -Unit "SomeSimBoard"\
-SignalLabel "Virtual Input for Backup" -UnitMap "57" -Category "Virtual"
-Name "vdo_BackupSignal" -SignalType "DO" -Unit "SomeSimBoard"\
-SignalLabel "Out signal for Backup" -UnitMap "57" -Category "Virt"
#
SYSSIG_IN:
-Signal "vdi_BackupSignal" -Action "Backup" -Arg1 "SYSTEM:"\
-Arg3 "/hd0a/AutoBackup" -Arg4 0
#
EIO_CROSS:
-Res "vdi_BackupSignal" -Act1 "vdo_BackupSignal"