PREOP to SAFEOP failed error in ECAT state machine Twincat 3 - plc

I am trying to control a Staubli arm (CS9) using a C6930 BEckhoff PLC using uniValPLC. I have configured the robot as ECAT slave. When I want to stablish stablish comunication between two devices, I have the following 3 errors:
The problem occurs when I link PLC variables with robot variables. Twincat continues in run mode despite of the errors, but I can not read robot variables.
Please I need help.
Thanks.

Related

Can't launch gazebo simulation with my python code

I am using ROS Melodic in Ubuntu 16.04.
I am working with turtlebot 3 burger and trying out simulations on gazebo.
I have written a simple code to make the turtlebot move in a circle.
The code works perfectly as everything was working a couple of days ago.
Now when I try to launch it using
roslaunch assignment3_ws move.launch code:=circle
I get the following error:
ERROR: could not contact master [https://localhost:11311]
The traceback for the exception was written to the log file
I tried running it in every possible way.
With roscore, without roscore.
Even the network is setup properly in the bash file.
Can anyone provide a solution?
Have you changed the ROS_MASTER_URI environment variable to 192.168.1.162 ?
if you are using simulation and you need to set your ROS_MASTER_URI to localhost.
you only change ROS_MASTER_URI if you are trying to connect to remote ROS systems(Servers, other PCs, etc).

Failed to load the provider SiloedPackageProvider.dll and metaDeployProvider.dll

Trying to simulate Raspberry Pi in windows 10 laptop with windows 10 IOT Core.
http://annabooks.com/Articles/Articles_IoT10Core/Windows-10-IoT-Core-VM-Version-1.2.pdf
I found this article very useful but has used pre-built image “For MinnowBoard Turbot/MAX”.
I get these errors and other errors too.
Failed to load the provider SiloedPackageProvider.dll and metaDeployProvider.dll
CFfuMiscHelpersT ValidateNotOnTheSameDisk#904 failed with 0x80070001.
while executing this command from winpe.
Dism.exe /Apply-Image /ImageFile:"d:\Flash.ffu" /ApplyDrive:.\PhysicalDrive0 /SkipPlatformCheck
Failed to load the provider SiloedPackageProvider.dll and metaDeployProvider.dll
Also please tell me a way to copy logs from the VM running though HyperV.
Thanks
This issue occurs when you try to back up a specific library or when you accept the default settings in Windows Backup and Restore.You may try to follow up this document to fix the issue.
There are various ways exist to copy data between a Hyper-V host and its guest machines. You can search the ways from internet, or open a new issue for help.

TwinCAT: Running on isolated cores failed

I was trying to activate my configuration on my local PC, but it failed. I tried:
Isolate 1 or 2 cores on my pc (Under SYSTEM > Real-Time and reboot the PC) and run the PLC tasks on those cores. When I do this I get the following error:
'TwinCAT System' (10000): Sending ams command >> Init4\RTime: Start Interrupt: Ticker started >> AdsWarning: 4118 (0x1016, RTIME: startup of isolated CPU fails!) << failed!
I then tried to run it on the normal windows dedicated CPUs (so none of the CPU’s were isolated). When I activated the configuration (and enabled Virtualization in the BIOS) I got the following error message:
Setting TwinCAT in Run Mode with KB4056894 is not possible
Uninstall KB4056894
or
Activate a solution using only isolated cores
I could not find KB4056894 installed on my PC. Any other solution?
I'm using TwinCAT 3 Build 4022.14 under Windows 10.
From Beckhoff support:
According to the error note, the Microsoft patch for spectre/meltdown
is installed on your PC. Normally, the TC3 should work with this patch
when using isolated cores…
However, since version TC3 Build 4022.16, this problem is solved.
I installed 4022.22 and everything worked.
I just want to share my experience with this error and how I solved it. Just in real-time menu set the cpu cores as 1 shared and 3 isolated cores. since my cpu has 4 core. Then set this value on target and then it will ask for reboot. after reboot it worked without this error and I was able to run the my code.

Failing to acquire vTAP interfaces in a virtualized environment

Suppose I've got the following setup:
A Host which runs two KVM VMs(VM1 and VM2), a virtual bridge virbr, and two bridge taps vTAP1 and vTAP2. The VM's are attached to the vTAPS respectively.
I've got an application running on the host which measures different load metrics on the bridge. For achieving this it needs to acquire the vTAPS in order to stream the packets between the vTAPs through the bridge for measurement.
The problem is that I can't acquire the vTAPS, because the ioctl TUNSETIFF syscall fails with EBUSY errno.
I guess that it happens because the application(runned on the host) is not the owner of the taps(which owned by the VMs). Adding new temporary bridge vTAPS for measurement may not be always a solution because sometimes I would want to measure the flow directly between the VM vTAPS.
Attempted solution: There is a Multiqueue tuntap interface:
Linux supports multiqueue tuntap which can use multiple
file descriptors (queues) to parallelize packets sending or receiving. The
device allocation is the same as before, and if user wants to create multiple
queues, TUNSETIFF with the same device name must be called many times with
IFF_MULTI_QUEUE flag.
using IFF_MULTI_QUEUE stopped the ioctl from failing with EBUSY errno but it started failing on write syscall to the vTAP with EINVAL errno. So it didn't really solve anything.
I would appreciate any help, thanks.

Using MPI with two RaspberryPi

I am trying to make a 'dual core' RaspberryPi for a project I am working on. I had followed this tutorial by Simon Cox. Unfortunately I could not get the two RasPi to talk to each other. (This was using Hydra as the process manager)
After looking more carefully at the MPICH installers guide, which can be found here, I tried to use the -phrase to pass the passphrase I had created. However I could not find it as part of the hydra commands. So I re-installed with smpd and after many compiling attempts. I configured with:
/configure -prefix=/home/pi/mpich-install --with-pm=smpd --with-pmi=smpd
I also had to install libbsl-dev to get the MD5 that smpd requires. I also exported the path that the commands mpiexec and mpicc are in. After setting the passphrase I copied the image to a second SD card and put it in a second RasPi. I then set up the passphrase using ssh-keygen.
I was able to run the cpi program on the master Pi and the slave Pi individually but when I tried to run multiple processes on both at the same time I got the error
Fatal error in MPI_Init: Other MPI error, error stack:
MPIR_Init``_thread(392).................:
MPID_Init(139)........................: channel initialization failed
MPIDI_CH3_Init(38)....................:
MPID_nem_init(196)....................:
MPIDI_CH3I_Seg_commit(366)............:
MPIU_SHMW_Hnd_deserialize(324)........:
MPIU_SHMW_Seg_open(863)...............:
MPIU_SHMW_Seg_create_attach_templ(637): open failed - No such file or directory
Can someone please suggest how I can either fix this problem or get the RaspberryPis to communicate using MPICH?
Thanks
E.Lee
If anyone else has this problem make sure your hosts don't have the same name!
You can change it by following this tutorial http://raspi.tv/2012/how-to-change-the-name-of-your-raspberry-pi-new-hostname