Siemens TIA portal, specifically tags - plc

I have a PLC with a profinet, connected to a profibus DP slave. The plc is connected to a HMI screen. I am very new to this software and the guide that came with it, doesnt help me with my problem. I have tags created for various I/O but I cannot link any of the tags to the slave, in the IO tags tab it just says, there are no IO tags to display. Does anybody know how to link the tags?
Kind regards

Firstly very less information I get from your question, like what connection do you make betweeen PLC and HMI, Assuming you have profibus connection with AS-OS compile tags should be generated if connection is healthy.
Then on HMI (assuming WinCC) go to Tag Management and the Simatic S7 Protocol Suite under this you will find connection Profibus, Right click and check System Parameter you will find logical device name. Make sure to select correct device name from the combo box.
Then it should be fixed.

Related

Setting up Azerothcore. Where do I find and how do I edit the realmlist table in Heidi to allow computers on my LAN to join the server?

Edit: so we never obtained the answer, instead we tried it with the server and client on the same PC. This morning I tried logging into the client and it would hang on "authenticating". So I shut everything down and went back to my life for a bit. This evenng I tried again, and now it says account or password incorrect. We tried recreating the accunt and password, same thing. We made a new account and password, same thing. Any help would be appreciated. Both on this new issue and the first one below (because eventually I want us both to be able to play on our own computers). TIA
My son and I have been following the guide. We did fine until we got to the part that says: "Open the acore_auth database and find the realmlist table. You need to edit the address field according to your needs". We have searched through everything in acore_auth in Heidi and we have not been able to find where the realmlist table is, let alone how to edit it. We are using one dedicated computer for the server, and we will join the server via our laptops. Any help would be greatly appreciated. The guide has been very detailed thus far, thank you. My son is almost done with his AS in Computer Programming, with an emphasis on game design, not networking.
Upon further inspection... we discovered our acore_auth database is exmpty. All the Acore_? databases are empty. What did we miss? Any ideas?
You have to edit the table realmlist of the acore_auth database and change the address field with the LAN address of the PC where the server is running:
Reading your question it sounds much that you are trying to run AC on Windows, so I recommend reading the installation guide here https://www.azerothcore.org/wiki/installation#azerothcore-classic-setup
Which also includes installation for macOS and Linux if you happen to use them.
In short to populate your database for the first time you need to run your Authserver and Worldserver applications which will automatically import the base and update files into your database. Then you go to acore_auth.realmlist and specify the address field to LAN IP (192.168.x.x) for the host PC to allow other PCs in your network to connect to it.

Codesys and CANopen multisame NodeID

If I have Codesys project with CANopen manager and I add a CANopen slave node to the CAN with node id 19, the system is clear to me, but if I add two same sensor devices with same factory preset nodeid 19, how do I change the nodeID of either of two? I do not have any idea. Devices support LSS but i dont have idea how to implement nodeid change with or without it. Should I code it or should the canopen manager change the nodeid somehow. Any ideas are welcome. Of course I could change it by adding first device to the CANand change it and after that I could add the second one to the CAN bus. But I want to change the dynamically when both are in the CAN bus same time so it should be same situation as in future production line.
You can either write a small program in CODESYS that changes the ID, or if you have a USB to CAN tool you can send the commands to change the ID.
This is normally done in a 2 step process.
1- Set the parameter
2- Save the parameter (usually with some "magic word).
The message to change the ID will depend on the manufacturer.
Sometimes this is in the EDS file, so it might be worth it to have a look in there.

Connecting a device to an account

So the title sounds stupid. I'm not really sure how to really word it, but I want someone to help guide me on what to look for. Little back story first so I'm working on a Raspberry Pi project that involves using an LTE service currently I have a dashboard running on a AWS EC2 web server with a simple user working user login.
I have a raspberry pi that is directly pointed to the dashboard/account via an IP address. I want to know how to do something like giving a device an ID and having it connect to an account. So for example with Nest products you have the QR code on the camera you take a photo and that devices get applied to your account.
Is this even possible with Raspberry Pi(I'm sure anything possible, but is it feasible? If so what should I look into or learn how to do such thing. I know its not something that can be answered in a short paragraph just looking for some guidance.
Right, thanks. Well, I think you need to program this into the pi server app. So currently your Pi is reading a sensor and sending this data to the web server, right? I suppose you have a daemon running, taking readings, and doing an API REST call to the server backend, correct? So what you want is to have a unique code for each pi, sent with the API call, and then on your DB server side,you store all readings related to their unique code.
You don't need to pre-validate this code, there are GUID generators that will create a number for you, guaranteed to be unique for all eternity, so on the PI, you set it up once, to create the PI's code, and use it from then on. Now, server side, then associating a device with a user is a matter of choosing the data associated with a given gui. And I think that covers it.
You can improve on this basic idea by giving it more thought, but I think it's a good starting point! Do let me know if I can help you with anything else!

Directly connecting two Arduino Yun boards to each other

I am trying to connect two Arduino Yun boards to each other via WIFI (make one board control a pin on the other board an vice versa) and I am having trouble making it work the way I want to.
This is where I've gotten so far:
I have two Arduino Yun boards with a simple sketch installed on each, which works fine as long as I keep the "connecting-each-other"-part out of it. It uses a potentiometer on the analog port, reads its value, maps it to the range of 0-255 an fades a LED up or down on one of the digital pins (brighter / darker) depending on the given value. Now I want to use the potentionmeter of one board to control the LED on the OTHER board.
To do that, I tried to use the REST API. I combined my sketch with the code from the "Bridge" Example Sketch, which sets up a http-client/server on the Arduino Yun (on the Linux part) allowing it to receive requests to control and read patricular pins via http.
When using the specific URL for the REST API in a browser, it works fine. For example: when I type "http://myarduino.local/arduino/digital/3/1" it sets the value of digital pin 3 to 1 (i.e. LED is switched on) --> so that's all fine
I am not sure how to continue at this point, since I dont want to control the board from a browser or app but make one Arduino Yun control another Arduino Yun directly. If I put a http request in my sketch like mentioned above via client.get and client.read (as in the example sketch) it does not work. See example code below. It doesnt have any effect nor does anything appear in the serial monitor (with the original URL "http://arduino.cc/asciilogo.txt" like in the example, the ascii code appears in the serial monitor)
HttpClient webclient;
webclient.get("http://ardu1.local/digital/3/1");
while (webclient.available()) {
char c = webclient.read();
Serial.print(c);
}
Serial.flush();
I am a beginner with Arduino Yun boards and maybe I am missing something?
Thanks for any help or pointing me in the right direction. Or if you need more information to help me with this problem, please let me know.
I found another way to connect two Arduino Yun boards directly, or as close to "directly" as it probably gets. The REST API was not the right way to go. So this is for anyone who might encounter the same "problem":
After some research I came across "Spacebrew". It's based on "websockets" and requires a server to connect the boards to each other, but it is very flexible. It's also fairly easy to setup a spacebrew server locally. It allows every client (like a Arduino Yun board) connected to the server to publish different types of data (boolean, range, value) and/or to subscribe to the published data from other devices using a simple webinterface. The good thing is, that the connection is fast and there's no waiting for the connection to be reestablished when there is data to be sent.
I used the Arduino Example Sketch "spacebrewRange" and it worked fine for me.
It also requires a few other things before it can work, but its explained on the website and in a tutorial:
http://docs.spacebrew.cc/gettingstarted/
http://de.slideshare.net/julioterra/spacebrew-server-workshop-itp
Trying to do the same, it seems, and for me it works (this bit at least :-|
I let one arduino request the URL "http://router.domain:port/arduino/key/value", using a Process which runs cURL. The receiving arduino interprets this request to set the key to the value, using a YunClient.
From the URLs in your question, it seems that you are missing the mandatory "/arduino/" component in the path name. As far as I know, this is needed to direct any requests directed at the OpenWRT stack to the arduino/Leonardo part.

Query Hunt Groups with TAPI and Avaya IP Office

I am using TAPI 2.X to develop a solution for Avaya IP Office 500 v2 PBX as 3th party application to control it. Right know I can make calls, hangup, intrude, open lines and so on. I need to query witch lines are acting as a queue because I have the default queue (200, Main in IPO are called Hunt Group) but in TAPI is shown as another line with a single device connected to it. Can anyone give some hint or show me some kind of option to do it?
Thank you.
Not sure if Avaya TSP does that, but the standard way is to set LINEADDRCAPFLAGS_QUEUE bit in the dwAddrCapFlags field of the LINEADDRESSCAPS structure:
http://msdn.microsoft.com/en-us/library/windows/desktop/ms734843%28v=vs.85%29.aspx
If you're using our AddTapi dll you can check TapiAddress.IsQueue and TapiAddress.IsRoutePoint properties.