Announcement

Collapse
No announcement yet.

PxK : Use RS485 Port Ready bit

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • kewakl
    replied
    Update: Based on Tinker's post, I reworked my Solo comms routine in an attempt to minimize writing to the temp and overtemp controller's SP parameter

    (refer to the three code blocks in post 1, they are close to what I have now)
    Basically, I changed the Max_Comms values in the CPD instructions (to 8 and 11, respectively) and inserted two groups of MRX/accessory code at the beginning of the counting sequence.
    This new code reads the SP from each controller.
    Then, if the SP value read from the controller is different from the desired SP, I allow the MWX/accesory code to write the new SPs to each controller.
    If the SP value is not different, increment the event count - skipping the original MWX instruction.

    I hope that this saves a bit of EEPROM WRITE damage.

    Leave a comment:


  • ADC_CommTeam02
    replied
    Sent you PM

    Leave a comment:


  • kewakl
    replied
    Since looking into this issue has a PxK communicating with two Solo temperature controllers and the comms are already in-place, this may be a good time to verify my statement in this post

    Leave a comment:


  • kewakl
    replied
    Always ethernet. Stride SE2-SW5U and EA7-T15C
    I have not tried USB.

    There is one P3K on the switch. There will be 6 P3K's when finished.

    On the bench I have a Netgear (FS726T) ProSafe 24 Port 10/100 Smart Switch. (for any ethernet sniffing needs)
    Same issue, so other devices do not appear to be causing anything that cannot be modeled on the bench.



    I just clocked some transfers.
    Code:
    Ethernet
    Bench total with compile is   ~3.8  sec
    Bench just transfer           ~2.5  sec
    
    Machine total with compile is ~8.3  sec
    Machine just transfer         ~4.4  sec
    
    USB
    Bench total with compile is   ~3.7  sec
    Bench just transfer is        ~2.5  sec
    It will be difficult to do a USB transfer on the machine, If I can do it, I will update here.


    NOTE: While editing the code for the reproduction, I errored in Task 'Solo' on Rung 24.2 The third and fourth tags in the CPD should be OT_PV_ErrCt and OT_PV_ErrFlag.
    I CTRL-V pasted on one too many CPD instructions.
    If you notice that comms will not restart and the tag G_OT_PV_ErrCt is incrementing, change the tags mentioned in 24.2

    Leave a comment:


  • ADC_CommTeam02
    replied
    Are u transferring via Ethernet or USB? Have u tried USB and do you have the same issue?
    How long is the transfer taking?
    What is your network topology? (managed vs. unmanaged switches), etc.)

    Leave a comment:


  • kewakl
    replied
    Originally posted by P3K_ADC_Eng View Post
    Appreciate the information. I will get this over to our development team to begin investigating.
    Thanks.

    I upped to the currently available FW 1.2.8.25 and the supporting SW 3.5.0.16
    Still seeing the comms not recover at Runtime transfer.

    Leave a comment:


  • ADC_CommTeam02
    replied
    Appreciate the information. I will get this over to our development team to begin investigating.

    Leave a comment:


  • kewakl
    replied
    Originally posted by P3K_ADC_Eng View Post
    What version of S/W and F/W are you using?

    Can you go online with the CPU and create a system report and then attach to this thread of PM me? Our QA team would like to see if they can duplicate.
    P3K_ADC_Eng I haven't been ignoring you, I have been working on MCVE for this issue.
    Code:
    I used code tags for text alignment
    The project target device is a      P1-540 FW 1.2.7.37.
    At my desk the target is a          P1-540 FW 1.2.5.38.
    Both projects are                          SW 3.4.0.16.
    Both P1K's exhibit this behavior, so it is not limited to the specific firmware.
    I have not yet attempted the firmware that you suggested - because I am working on a RunTime issue. If I get time for the FW update, I will post results.

    I have whittled the project to the solo comms and the project change detection routine.
    If you navigate to the dataview named 'Purge', try multiple runtime transfers with and without the tag 'EN_ProgChgDetect' on.

    System: P1-540, RS485 to two SOLO controllers (nodes 1 and 2) Node 1 is Temperature controller, Node 2 is overtemp. Modbus RTU, 9600 E81

    I sanitized the file 'system_info.txt' to remove personally identifiable file/folder/path references. (username references were replaced with '__USER__')
    Attached Files

    Leave a comment:


  • kewakl
    replied
    Originally posted by MikeN View Post

    I always thought there was a very short one at the end of the transfer. I saw this on DL06's too. You could probably know for sure by putting a first scan contact in your program, have it go to a set coil. Make sure coil is off, then do a runtime transfer and see if the coil goes on. I would assume a first scan bit would go during any run-stop transition including one that happening during a runtime transfer.
    During a Runtime transfer I am not seeing the tag go true when I use FirstScan to Set a tag.
    I do on a StopMode or on a stop-run switch.-- as expected.

    Leave a comment:


  • ADC_CommTeam02
    replied
    What version of S/W and F/W are you using?

    Can you go online with the CPU and create a system report and then attach to this thread of PM me? Our QA team would like to see if they can duplicate.

    Leave a comment:


  • MikeN
    replied
    Originally posted by kewakl View Post
    I am seeing this on a Runtime transfer. Is there a Run-Stop transition during a Runtime transfer?
    I always thought there was a very short one at the end of the transfer. I saw this on DL06's too. You could probably know for sure by putting a first scan contact in your program, have it go to a set coil. Make sure coil is off, then do a runtime transfer and see if the coil goes on. I would assume a first scan bit would go during any run-stop transition including one that happening during a runtime transfer.

    Leave a comment:


  • kewakl
    replied
    I am seeing this on a Runtime transfer. Is there a Run-Stop transition during a Runtime transfer?

    Leave a comment:


  • ADC_CommTeam02
    replied
    We just released a new 1.2.7.39 firmware that may fix your issue you are seeing with your serial Modbus communications:

    1.) CPU may lockup with serial Modbus instructions when transitioning Run-Stop.

    If this does not fix your issue please contact our technical support team for additional help.

    Leave a comment:


  • kewakl
    replied
    Click image for larger version  Name:	NP_RST.png Views:	0 Size:	29.4 KB ID:	123280
    This is the program change detection and attempt to reset the comms process


    On a post edit, why can't I put this text ABOVE the pic?
    Last edited by kewakl; 06-10-2019, 08:31 AM.

    Leave a comment:


  • kewakl
    replied
    So far, with the NodeBit from the _ACTIVE status register in its current place, I have had about 10 successful restarts after runmode transfers.
    ::crosses fingers::
    It is NOT consistent in firing WHEN the timer DONE goes true, but it (so far) eventually (withing seconds) starts COMMs again.
    Code:
    .         COMM_TASK
    .                 1     _INIT:1                                     | MWX            TC_SP
    .-------------]=[-----+----]/[-----+----------------+---------------+
    .                     |                             |               |
    .                     |                             |               +------------------------
    .                     |                             |    
    .                     |                             |               | CPD
    .                     |                             +---------------+ 1       _INIT:1
    .                     |                                             | 1       _ACTIVE:1
    .                     |                                             |
    .                     |                                             +-----------------------
    .                     |                                
    .                     | _ACTIVE:1     TC_SP.Success                  | CPD    
    .                     +----] [-----+-----] [------------------------+ 0       _ACTIVE:1
    .                                  |                                | 0       TC_SP.Success
    .                                  |                                +------------------------                                
    .                                  |                    
    .                                  |  TC_SP.Success                 | STMR            TC_SP_Err
    .                                  +-----]/[--------+---------------+ (Pre = 5)
    .                                                   |               +------------------------                                
    .                                                   |   TC_SP_Err            
    .                                                   |    .Done      | MATH    TC_SP_ErrCt
    .                                                   +----] [----+---+ TC_SP_ErrCt + 1
    .                                                               |   |
    .                                                               |   +------------------------
    .                                                               |
    .                                                               |   | CPD
    .                                                               +---+ 1       TC_SP_ErrFlag
    .                                                                   |
    .                                                                   +------------------------
    .
    [EDIT The forum is munging the CODE again]
    Last edited by kewakl; 06-10-2019, 08:32 AM.

    Leave a comment:

Working...
X