
Str8jCkt
MrPLC Member-
Posts
49 -
Joined
-
Last visited
-
Days Won
10
Str8jCkt last won the day on March 31
Str8jCkt had the most liked content!
Profile Information
-
Country
United States
Recent Profile Visitors
The recent visitors block is disabled and is not being shown to other users.
Str8jCkt's Achievements
-
Str8jCkt started following Motion Control without FB MC , Beginner of NA HMI Programming with Sysmac Studio , NA - PLC connection state and 2 others
-
Beginner of NA HMI Programming with Sysmac Studio
Str8jCkt replied to TonyBB's topic in NJ Series / Sysmac Studio
@TonyBB Try this sample program to see if it does what you are looking for. Once a user has logged in successfully, it will show a popup with the user name and then it will automatically close after a set amount of time. Just build and run in simulation. I created some general user levels that you can login with to test the pop-up notification. HMI_Popup.smc2 -
@adept basically what @BE is implying is you create a heartbeat between the HMI and PLC. The Heartbeat signal needs setup to run a subroutine in the HMI. If heartbeat stops, then HMI has responded to last heartbeat and now needs to "do something". I replied to a post a while back and explained how i would setup a heartbeat. @BE actually replied to that post and referenced another Post in which they were dealing with a similar issue to what you are seeing. Here are links to the two posts. perhaps you can glean some insight to help you find a solution to your problem. https://mrplc.com/forums/topic/43681-na5-hmi-popup/ https://mrplc.com/forums/topic/42220-booleans-getting-stuck-on/
-
Sysmac Studio Ethernet IP EDS file
Str8jCkt replied to NootNoot's topic in NJ Series / Sysmac Studio
@NootNoot Good to hear it is working. I did modify the EDS file. Changed the revision just so it would not overwrite the original in my library and could compare differences easier. I would recommend letting Rheonics Support know what all had to be done to get it working on Omron NJ/NX series PLCs. That way they can possibly make a note on their website and distribute an "officially" support file.- 10 replies
-
- 1
-
-
- omron
- sysmac studio
-
(and 2 more)
Tagged with:
-
Sysmac Studio Ethernet IP EDS file
Str8jCkt replied to NootNoot's topic in NJ Series / Sysmac Studio
@NootNoot I don't have a sensor to test, but this is essentially what you want from your EDS file. RheonicsSRV1.eds- 10 replies
-
- 1
-
-
- omron
- sysmac studio
-
(and 2 more)
Tagged with:
-
PIDAT (MV) Displaying "NaN"?
Str8jCkt replied to Engineerforlife42's topic in NJ Series / Sysmac Studio
@Engineerforlife42 Just throwing it out, but I would start by checking the values that are in OprSetParams MV can be assigned values from some of the parameters depending on state (ManResetVal, MVTrackVal, StopMV, ErrorMV) IF any of those values are set as NULL or possibly outside their valid range, then it is possible the assigned value in MV could show up as NaN -
@Uni_engineer When moving a motor you need a few things. Control, Position and Speed. You are changing position but also make sure you have a speed set for it to run or you won't get any motion. I have never used an NJ101-9000 with no motion controller so i cannot say for sure, but normally there a few more things you need to map on the PDOs to get things working with a Yaskawa EtherCAT drive. Normally, you need at least Control Word (6040), Target Position (607A), Target Velocity (60FF), but also per the manual Mode of Operation (6060) is required as well with the newer CPUs. But this is when you have the Motion controller, so again, i am not sure how the NJ101-9000 will handle things since you cannot use any motion function blocks. Here are the PDOs i map when using with NJ and NX controllers with motion capability.
-
LoadRecipe.smc2 View File Submitter Str8jCkt Submitted 08/14/2024 Category PLC Sample Code
-
@kckku Contact your local Omron Rep. Omron does have a Digital Key Generator that can be used in lieu of the USB dongle. You still purchase a license like you would with the USB dongle but it generates a key that is serialized to the hardware so not as mobile/flexible as the dongle. You generate C2V file and it gets sent to Omron Japan for activation and they send you the license back. Only thing is if there are any major hardware changes to the PC then the license can stop working. It is good to keep a spare USB around incase machine needs a PC change. Then can use the USB on new PC until you purchase and receive a new hardware license.
-
IO Module and Channel Faults for NX-ECC203 and NX-EIC202 IO?
Str8jCkt replied to SBOB's topic in NJ Series / Sysmac Studio
@SBOB You can get the overall ECAT or EIP error using the built in functions - GetECError and GetEIPError. Not sure if the level and code would give you anything deeper that could be parsed out to a particular card causing the error. There is also the system variable _EIP_ErrSta that may give further information but i have never used it. If you have an EtherCAT or EIP Eror on the controller you can also add logic to clear the CPU fault once the cause of the error has been corrected. Here is some code i put in all my programs for detecting Controller level errors and clearing those errors. System Variables that may prove handy -
@Artz First thing to do would be to clear all unused variables. Go to Variable manager and there is the option to Delete ALL unused, or you can go thru each POU and delete unused internal and external individually. Next you can use the Memory usage details to see how much memory is assigned to each Program in your tasks. Once you have cleared up those then you need to re-evaluate any redundant type variables or how you can restructure your variables to minimize the amount used. Sadly, after that if you still not have enough memory then may need to consider going to a higher PLC version (maybe NJ501 instead of NJ101). This entails quite a bit of cost so best to do everything you can to rethink what and how you do things in your program. Even then sometime the only answer is to upgrade PLC.
-
@MechEngi Photovoltaic is correct, there is no direct conversion. Don't know the end result you are looking for or how the results will be used, but here is a screenshot of the method i would use to approach what you are trying to do. I would clear the decimal with a multiplier and then convert the remaining digits, so they end up becoming ascii equivalents and then make the result a string. You could go back and place your decimal "ascii" value back in the string as well as the negative symbol but again, cleanup depends on how you plan to use the results of the conversion. I put all the address in the watch window so you can see what is going on with the conversions.
-
@Squirrel Not sure if you are just wanting to pull the Current time-of-day from the HMI system clock or you are wanting to make changes to the system clock. To pull time of day there are a couple ways you can do this. First put the Current time in a holding variable of type Date. Then you can strip just the TOD (HH:MM:SS) out of it and put it into a string variable. To edit you can use the integrated keypad to edit the holding variable DateTime and update the "TOD" variable as needed. You can trim the Keypad to just allow edit only to the hour/min/Sec components if desired. Program file is too large to attach but could be something like below
-
@zygic97 Disclaimer: I have not used an R88D drive so someone more experienced than me could probably tell you if this actually works or not but here is something you could possibly try. You could maybe write directly to the Object for the Drive Prohibition Input Selection. That is the part I am not sure if it will be allowed or not. It is a Read/Write object so it may be possible. Try toggling its state depending on a “Mode” selection of some kind you have in your logic. Threw together some mockup code that you could possibly build off if it works.
-
Map Structure to Byte (and Vice Versa)
Str8jCkt replied to Niloc's topic in NJ Series / Sysmac Studio
Yes it can be tricky if you are not careful with using it. I have used it only a few times. Some have been when wanting to match a "load recipe number" to binary output Another is when i needed to convert a value being passed as a DINT over Ethernet/IP and i needed to parse out the corresponding bits of the lower WORD but also needed to read the high word as a unique Decimal value. This method is nice because can assign the AT to a variable of any type and the memory addresses used automatically expands to cover the necessary size. That makes it easy to take the value and then parse out as bits, byte, word, dword, etc. -
Map Structure to Byte (and Vice Versa)
Str8jCkt replied to Niloc's topic in NJ Series / Sysmac Studio
@Niloc You can do several conversion using ToAryByte or map the bits directly, but there is an easier trick to go about this. Turn on C memory areas, can use various of the types but WR works for this. Create two internal variables mapped to the Same W address with the two different data types - your Union and sub structure. This will behave the old school memory way where you can use the same memory address and view or use in various formats.