Hello everyone, I am currently in the process of converting a RSLogix 5000 program to Step7 and I need assistance with bit shifting my array of double integers. This is essential for tracking products on a conveyor system, where the length of rows can reach up to 130 bits. In RSLogix 5000, I was able to effortlessly load the value of the source bit into new vacant spaces and shift the left bits of array[0] onto the right bits of array[1]. However, I am encountering difficulties with this process in Step7. Can someone please help me troubleshoot and identify what I may be doing incorrectly? Thank you.
I have fond memories of working with a program in Simatic Manager (Step 7 Classic) that involved some very intricate manipulations. In this program, we were tasked with shifting and rearranging an array of words (A, B, C, D) in a specific order, with D being the least important word. The process began by loading the most significant bit of word B into bit 0 of word A using a BSL instruction, and this process was repeated until all words were shifted accordingly. Finally, the "new" bit was inserted into bit 0 of word D. Unfortunately, I no longer have access to the software to revisit and refresh my memory on the details of this task.
As @joseph_e2 pointed out, Siemens is German for "some assembly required." With that said, the decision between writing a custom FB or finding one on Google is a toss-up in terms of speed. It's worth checking the downloads section of this website to see if there's one available for you.
Hey there, it sounds like you might be running into some intricate specifics with the Step7 environment. In Step7, bit shifting isn't as straightforward as in RSLogix 5000. Instead of shifting from array[0] to array[1], you might have to manually copy each bit over. Utilize the system functions (SFCs) for shift registers - they let you shift and manipulate bits in a DB in ways similar to what you're used to. They have a bit higher operational setup, but could end up being the solution to your issue. Hope this helps, and do let us know how you progress with your project!
✅ Work Order Management
✅ Asset Tracking
✅ Preventive Maintenance
✅ Inspection Report
We have received your information. We will share Schedule Demo details on your Mail Id.
Answer: - To troubleshoot bit shifting issues during the conversion process, you can start by carefully reviewing the syntax and logic used in RSLogix 5000 and comparing it with the equivalent functionality in Step7. Pay close attention to any differences in data types, array handling, and bit manipulation methods between the two platforms.
Answer: - Common pitfalls to avoid when working with bit shifting in Step7 include incorrect data type conversions, mismatched array sizes, improper handling of bit positions, and overlooking differences in how each platform interprets and processes the data. Double-check your code for any potential errors related to these aspects.
Answer: - While there may not be specific guidelines tailored to this exact scenario, leveraging online forums, programming communities, and Siemens documentation can provide valuable insights and solutions. Engaging with experienced Step7 programmers or seeking assistance from Siemens support channels can also offer guidance on effectively transitioning bit shifting processes between the two platforms.
Join hundreds of satisfied customers who have transformed their maintenance processes.
Sign up today and start optimizing your workflow.