Join us today!

Notifications
Clear all

[Solved] EL6090 Newbie question about buttons

18 Posts
3 Users
2 Likes
661 Views
Posts: 12
Topic starter
(@mirek-boniewicz)
Active Member
Joined: 2 years ago

Hello!

I have Beckhoff's CX8190 and I'd like to get info about pressed buttons in module EL6090. I thought that is the same procedure like in input/ output pins in EL1014, but no. I see this module in tree on the left, I made global variable with %I* : BOOL for every button, I build solution, linked variables to buttons' adresses and still nothing. Where can I find help?

Best regards, Mirek

Reply
17 Replies
1 Reply
TwinControls
Admin
(@beckhoffsupport)
Joined: 2 years ago

Member
Posts: 71

@mirek-boniewicz Hi, you can make sure that the device is in OP state after activating the configuration under 'Online' tab of EL6090 terminal.

el6090online

You can also use the free run mode to check the IO status from the device without having to write any plc program or activate the configuration. 

onlinevalue

 

Just as a note, you can also activate/deactivate the UCP input/outputs under the Process Data tab and checking the boxes for the channels in the PDO Assignment. 

ucpInputOuput

 

Reply
Posts: 12
Topic starter
(@mirek-boniewicz)
Active Member
Joined: 2 years ago

Thanks for fast reply.

EL6090 PLC Online State Machine

This is how it looks in my project.

EL6090 PLC Process data

Process Data

 

Strange thing, because normal IO ports works fine, but this display doesn't. I'm electronics designer and programmer, but this language and IDE is completely new to me. 

You mentioned about FreeRun. Does pressing buttons should be visible on the Y/T chart in "online tab" ?

(I see only 0 value).

 

Reply
1 Reply
TwinControls
Admin
(@beckhoffsupport)
Joined: 2 years ago

Member
Posts: 71

@mirek-boniewicz Yes, activate the configuration mode in TwinCAT and then toggle the free run mode. Double click on the input/output of the terminal and go to Online tab. You should be seeing '1' when you press the corresponding button.

Reply
Posts: 12
Topic starter
(@mirek-boniewicz)
Active Member
Joined: 2 years ago

I forgot the most important - the code:

first global variables called BUTTONS:

{attribute 'qualified_only'}
VAR_GLOBAL

	bBUTTON_UP 		AT %I* 	:	BOOL;
	bBUTTON_DOWN 	AT %I* 	: 	BOOL;
	bBUTTON_LEFT 	AT %I* 	: 	BOOL;
	bBUTTON_RIGHT 	AT %I* 	: 	BOOL;
	bBUTTON_ENTER 	AT %I* 	: 	BOOL;


END_VAR

and main program:

UPPER window:

PROGRAM MAIN
VAR
	bButtonState : BOOL;
END_VAR

and LOWER window:

bButtonState := BUTTONS.bBUTTON_ENTER;

and Change Link option:

EL6090 PLC ChangeLink
Reply
kolyur
Posts: 12
(@kolyur)
Active Member
Joined: 2 years ago

In the Process Data tab for the EL6090, switch to Inputs in the top pane and be sure that PDO 0x1A00 is enabled. If this is on then the status of the individual buttons should be linkable in your I/O. Be sure to activate the configuration after making any changes to the process data.

EL6090
Reply
Posts: 12
Topic starter
(@mirek-boniewicz)
Active Member
Joined: 2 years ago

I had that settings. When I start program nothing happens. I see Input (5 bits) and Output (2 integers) of EL6090. 

I tried EL1014 module and works fine. Display shows  that it is in OP mode.

Maybe there is some library or something which I have to select before compile and run?

I connected 1 bool variable with UP button and 1 int variable with ValueRow 1 and launched it. Display shows something like this

EL6090
State: OP

and button variable is still FALSE.

EL6090 PLC DuringWork

 

Reply
1 Reply
TwinControls
Admin
(@beckhoffsupport)
Joined: 2 years ago

Member
Posts: 71

@mirek-boniewicz Have you tested this already ? Free run mode suggestion. Are you getting '1' on the graph when you press the buttons?

Reply
Page 1 / 2
Share: