panic mode

MrPLC Admin
  • Content count

    2949
  • Joined

  • Last visited

Community Reputation

214 Excellent

About panic mode

  • Rank
    Mitsubishi Moderator
  • Birthday 12/15/69

Contact Methods

  • Website URL http://www.google.com
  • ICQ 0

Profile Information

  • Gender Male
  • Location Mississauga, ON
  • Country Canada
  • Interests many...

Recent Profile Visitors

16446 profile views
  1. Average value

    That is a great idea... And so simple. To
  2. Adept Board Swap Error - No robot connected to system

    i have never uses that robot but based on quick internet search it seem to be a small robot arm (scara). btw. AWC board is not just an Etherent card... it is an entire motherboard (controller) with a lot of functionality. Did you follow the instructions in the manual on replacement? flash card is substitute for a HDD and contains OS etc. but key system settings (robot serial number, licenses etc.) are stored in NVRAM. when AWC is replaced, all settings need to be transferred, that includes flash card, NVRAM, address configuration... not sure what the "protection error" message is but may as well be complaint about missing license.   Adept MV Controller.pdf
  3. Booleans getting "stuck" on?

    you can have bunch of HMI buttons, each setting different bit in some memory area. at the end of PLC scan you can let PLC reset the entire area. for the rest of your PLC code, each of the bits will be seen as one shot. that will work rather nicely for plenty of cases and it is very efficient (no timers, very simple logic, no way to stay stuck etc.). if for some reason write message was missed, user would see no response and simply repeat pressing the same button.  but while simple, this does not work in all cases. an example is where you want to use button to jog axis (and releasing button is suppose to stop the jog). in that case one can resort to some alternative to make it robust. one simple way to get around this is to have HMI cyclically write entire block of memory. this way even if one message is missed and thus desired change is not seen by PLC, the very next message will overwrite the entire block and correct the situation. this is pretty much of how fieldbus data transfer works so all received signals seem to be continuous and instantaneous. this is also quick to implement when one is making custom HMI (a PC application using own driver or implementing just two functions of some SDK - read one memory block and write another...). but this is not how most HMIs work since it is limiting (all write requests need to be in one block). but typical controller may have many different memory areas (timer, counters, inputs, outputs, memory bits, data registers, retentive memory locations etc) they would normally send commands as individual writes to each individual location. so number, size and type of write messages would always differ. therefore one may dig into the bag of tricks and do something fancy depending on particular platform capabilities. and as you have already stated - if something is really critical, it should be handled as such and use more reliable solution. for example robots are making use of enabling switch (a safety device) allowing user to stop any motion command even if jog button was to fail. 
  4. Unknown PLC

     ACE3600 ?
  5. Average value

    maybe... did you check the instruction list? and you should always post your code and expectations. (resolution, time span, accuracy...)   if i read this right you have a problem due summation since average is computed by: AVG(n) = (X1+X2+...Xn)/n it appears that you are attempting to store top side of the fraction into one variable and of course this will overflow pretty soon. solution to not do that... note that the very next average will be AVG(n+1) = (X1+X2+...Xn+1)/(n+1) but this can also be written as this (isolate last term) AVG(n+1) = (X1+X2+...Xn)/(n+1) + Xn+1/(n+1) or AVG(n+1) = (AVG(n)*n + Xn+1)/(n+1) but that will overflow the same way as before due multiplication AVG(n)*n. however this can be rewritten as AVG(n+1) = AVG(n)*n/(n+1) + Xn+1/(n+1) where AVG(n) is previous average, Xn+1 is the latest sample, and "n+1" is the latest sample count. as long as you compute n/(n+1) before multiplying AVG(n), there should be no problem since n/(n+1) will grow but never exceed 1. ultimately this will settle at some average value since limit of  Xn/n goes to zero as n goes to infinity so adding more samples will just add zeroes and average will stop changing.  this begs question... are you really really sure you need total average over indeterminate and always increasing time interval and not average of several most recent samples? one would normally look at average only over fixed number of samples. that number can be small or large but it should be fixed. if you really want to cover "endless" interval, you need to define what is "endless".  
  6. Analog Output (0 - 5V)

    using half of the range is equivalent of loosing one bit. 0-5V is quarter of the range -10..10V so that would be reduction of 2 bits. i don't think that would make much of a difference for most applications. but if it is an issue one could add pair of resistors to form a voltage divider, that would allow use of up to 1/2 of range. still not worth the trouble in my opinion. NX-DA2603 : each channel has 8000 count over full range. (1/4 of that is 2000 counts) NX-DA2605 : each channel has 30000 count range (1/4 of that is 7500 counts)    
  7. Analog Output (0 - 5V)

    why can't you use it? you can limit in software value range and last i checked 0-5V fits inside -10..+10V range.  
  8. you will be well served with those but nobody can tell what the future will bring. programming in general is young discipline and evolving fast. 
  9. hmmm... the word clean is taking all fun out of it...   
  10. CP1L autoonline

    that is exactly opposite of what is in linked instructions and suggestions. when checkmark is set, function is disabled. 
  11. PLC Ladder Logic: Smart Window Blind System

    they are quite similar, both have similar instruction set, both require declaring variables to hold some value (cannot enter literals). i prefer look of thin lines of plc fiddle and more intuitive insertion of instructions but plcsim online has better handle on scrolling, instructions are in one group and always visible. https://www.plcfiddle.com/fiddles/0fce9df0-da52-4db5-afbd-770773b77465
  12. Atlas Copco Simmulator

    i think you meant to use word searching instead of finding.
  13. PLC Ladder Logic: Smart Window Blind System

    unlike https://app.plcsimulator.online/ plc fiddle does not work on mobile phone but otherwise it looks very similar in capabilities.
  14. PLC Ladder Logic: Smart Window Blind System

    i like that sim. bitmask operations would be nice addition