Jump to content

Gabriel Franco

  • Content Count

  • Joined

  • Last visited

  • Days Won


Everything posted by Gabriel Franco

  1. There are two functions you can use: Test Bit (to test specific bit on an integer tag) and Num To Bits, to convert integer to bits.
  2. There is a tag named Frequency.Frequency 1 (s) you can use with NO contact
  3. You can use inverted contact of "General.Ladder Initial Cycle" as a condition to store from your HSC to a global tag.
  4. Look at Help and search Interrupts immediate. There you find related information. I´m not sure if your selected HM+PLC will be able to handle that functions.
  5. Yes you can, thise Samba model comprises two RTD/TC inputs. https://www.unitronicsplc.com/support-technical-library/
  6. Puede intentar usando la función MODBUS #6 (preset holding register) en lugar de la #16. Algunos dispositivos esclavos no pueden procesar todas las funciones MODBUS
  7. You need set jumpers for current analog input and current analog output, did you?
  8. CopyMemory reads 4 consecutive addesses (long type). Column defined as Timer needs 4 bytes (integer type). I don´t remember the reason I read 4 long registers to read timers, but it works.
  9. I´ve read timers from datatables using VBA in Excel using this code: Call CopyMemory(resultLong, DB(lAddress * ElementSize + 23), 4) resultSingle = resultLong / (24 * 60) resultSingle = resultSingle / (60 * 100) Workbooks(NombreArchivoDatos).Sheets("Referencias").Cells(lAddress + lRowReadIndex + 2, 4) = resultSingle Workbooks(NombreArchivoDatos).Sheets("Referencias").Cells(lAddress + lRowReadIndex + 2, 4).NumberFormat = "[hh]:mm:ss.00" lAddress and ElementSize depends of RAM address of specific datatable you want
  10. If you use CopyMemory function to get data directly from PLC memory address, then use PtrSafe in declaration of module: Private Declare PtrSafe Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (Destination As Any, Source As Any, ByVal Length As Long)
  11. Version 1.28.34 does not change date modified. I also expect that any file just opened without any modification saved, is not changed its modified date.
  12. Right click on desired jump condition, then Clear jump option
  13. I just realized that npn/pnp field exists. I never had to change it before. Is it really relevant or just to visual indication?
  14. Note that initialize resets all memory to zero and if you have set some important values like PID parameters they will be all deleted. I find it useful only in new projects downloaded to used PLC.
  15. I don´t think it works for 400 Hz. Physical inputs requiere a minimum on-time to cath ON state. I implemented your idea long time ago but my frequency was a bit lower.
  16. You must set the frequency (MI1) according with your actuator capabilities and the IO specs. https://myzone-kza3sadj.netdna-ssl.com/wp-content/uploads/2015/12/IO-D16A3-TO16_TECH-SPEC_03-09.pdf
  17. 48 analog inputs per EX-A2X or EX-RC1, 6 IO-AI8. It is because data bus capacity, not PLC memory, if I remember well (from support answer I got time ago).
  18. You may also try PID output limits: output low limit = -1000, output high limit = +1000, then scale PID output to your analog output.
  19. I use UDP instead of TCP set as protocol in a single socket init. With UDP there is not need of connect/disconnect everytime I change to the next slave query. Query first slave, wait for its response, process data, wait a small time, query second slave and so on.
  20. 1. Yes, you can use 3 different sockets, port 502. 2. Try SLAVE ID=255 instead of 1 Don´t forget to Reset MB4 after reading holding registers.
  • Create New...