Jump to content
OMRON Forums

Eric Hotchkiss

Omron
  • Posts

    558
  • Joined

  • Last visited

  • Days Won

    8

Everything posted by Eric Hotchkiss

  1. The code "open prog 1 linear x100000 close" is making a motion program. It does not run it or assign it to a coordinate system. This motion program can be run in any coordinate system you want, even multiple at once. Lets say you want to run program N is coordinate system M. Terminal: &MBNR &M START N To run the program from plc: START M:N
  2. Take a look at the scara robot kinematics on the last page of our user manual. http://forums.deltatau.com/filedepot/download.php?f=Power%20PMAC/Manuals/Power%20PMAC%20Users%20Manual.pdf [FILE REMOVED]
  3. What IDE version did you upgrade from? I think these settings are stored differently for 2.x vs 3.x. Also, are you just talking about the editor window, or are you also concerned with fonts/colors in other windows (terminal, position, etc)?
  4. The readme.txt in the firmware version folder does show what firmware version is used for each cpu type. http://forums.deltatau.com/filedepot/download.php?f=Power%20PMAC/Firmware/Release/2.3.2.5/readme.txt [FILE REMOVED]
  5. I believe you wanted the arm posix version. Normal arm is for CPUs with a phase interrupt from a gate3. Arm posix is for CPUs that use an internal clock (like the CK3E). http://forums.deltatau.com/filedepot/download.php?f=Power%20PMAC/Firmware/Release/2.3.2.5/powerpmacARM_Posix.zip [FILE REMOVED]
  6. Are you saying only the motor you're moving stops or multiple motors are stopping? In either case, take a look at the motor status window and possibly coordinate status window.
  7. The process of getting axis positions is described in the pread/dread sections of the software reference. This starts on the bottom of page 1304 with the newest version from October 20. Ldata.Coord=Coordinate System Number pread Axis actual positions are now stored in D variables according to the attached table. A position reporting PLC can be used to put these axis positions into global variables. Ldata.coord = 1 // Select coordinate system 1 PREAD ReportActPosX = D6 // Actual X ReportActPosY = D7 // Actual Y DREAD ReportDesPosX = D6 // Desired X ReportDesPosY = D7 // Desired Y For motor positions, just look at Motor[x].Pos, Motor[x].ActPos, or Motor[x].DesPos.
  8. I found that clock_gettime() works perfectly on a CK3E, but when I take it over to a UMAC 460 CPU I'm freezing up my CPU as well. Please send an email to support@deltatau.com with your CPU type and how you're calling the function (CPLC, PLC calling CfromScript, etc) so I can make sure the solution I find will work for you.
  9. This code will get time since epoch with nanosecond resolution. You can convert to milliseconds and round first if you want. struct timespec start; clock_gettime( CLOCK_REALTIME, &start); return(start.tv_sec+start.tv_nsec/1000000000.0); It should be added to the NTP app note soon.
  10. Here is my App Note on network time. http://forums.deltatau.com/filedepot/download.php?f=Power%20PMAC/Application%20Notes/Network%20Time%20on%20Power%20PMAC.pdf [FILE REMOVED]
  11. Yeah, it doesn't look like I actually had to edit sources.list on either wheezy cpu, I just assumed it was needed the first time through. That's interesting. I did not need to run "apt-get install debian-archive-keyring" on my 460 to install ntp and ntpdate. I'll have to revert to my backup image again and try installing gdb at some point. It seems fine to use ntpdate on these debian 5 and 7 systems, and I didn't have any luck getting ntp to give me it's functionality. Also, I had a much better experience at startup with ntpdate. ntp may run before or after the pmac firmware starts (it can be changed) and it takes so long do acquire the date for the first time you need a sleep time. Ntpdate simply grabs the time as soon as there is a network connection.
  12. This looks more or less correct. I haven't messed with time zones as it seems like the pmac firmware always acquires time in UTC. A few points: You probably need to change the /etc/apt/sources.list You probably need to make the date reasonable before you can use apt-get. date +%Y%m%d -s "20170816" You probably want ntp as well as ntpdate. ntpdate will acquire time once as soon as a network connection is established, ntp will keep this time accurate. You don't have to cd before you cp. cp -a /.readonly/etc-tmpfs-mirror/* /.readonly/etc/ cp -a /.readonly/var-tmpfs-mirror/* /.readonly/var/ I'm not entirely sure yet if CK3E handles running ntp/ntpdate at boot correctly. Sys.TimeOfDay should show UTC in seconds if linux time was correct at boot, $$$ or $$$***. I'll have app notes on ntp/ntpdate for 460, 465 and arm cpus very soon. I'll make sure to link this thread to them.
  13. According to the ACC-84E manual, Y:$78D00 is 1 Off, all else on. Are you sure you don't have this backwards?
  14. In general you can put a Power CPU into a Turbo UMAC. You can't expect to go the other way. For example, an ACC-24E3 will only work with a Power CPU. The manuals for some cards are written with only Turbo in mind, although they work for Power. Send an email to support@deltatau.com if you need help setting up a specific card on Power.
  15. Dear Chanaka, Your project got an error on this line: EncTable[1].pEnc=Acc24E3[0].Chan[0].ServoCapt.a The line should work on all hardware if you change it to: EncTable[1].pEnc=Gate3[0].Chan[0].ServoCapt.a Gate3 can be replaced by a hardware specific alias. On a Power Brick the alias would be PowerBrick. On a UMAC the Gate3 chip is on the accessory 24E3 so the alias is Acc24E3. Regards, Eric
  16. Acc72EX.Udata16[j] is an unsigned 16-bit integer with a range of 0 to 2^16-1=65535. I'm seeing values of up to 762.38*10^6 when you plot the pointers. It would take 30 bits to store an unsigned integer that large. You may try specifying the bits when you make your pointer. PTR M__ -> Acc72EX[0].Udata16[3200].0.15 or PTR M__ -> Acc72EX[0].Udata16[3200].8.23 (some turbo accessories will start at bit 8 instead of 0 in power)
  17. I'm assuming Ptr. whole word is Acc72EX[0].Udata16[3200]. While it is ramping up, if you look at the left y axis, you can see that it is also basically constant in value. It's always 762.38*10^6. When I look at the watch window I see 1717, a completely different value. Are you sure that pointer is pointing at that structure element? Also, at the top of your watch window, does it say online?
  18. Terry, You downloaded the latest version of the program you run on your computer to program your Power PMAC. The most recent version of the firmware is available and . Use the cpu command in the terminal of your IDE to check which cpu you have.http://forums.deltatau.com/filedepot/download.php?f=Power%20PMAC/Firmware/Release/2.1.1.3/2.1.1.3%20powerpmac460ex.zip [FILE REMOVED]http://forums.deltatau.com/filedepot/download.php?f=Power%20PMAC/Firmware/Release/2.1.1.3/2.1.1.3%20powerpmac465.zip [FILE REMOVED]
  19. The ACC-8E was obsoleted with a last buy date of November 30, 2016.
  20. The ACC14E User Manual can be found here. http://www.deltatau.com/manuals/pdfs/ACC-14E.pdf?id=635787783275025375 Other manuals not found on the forum file depot can be found here. http://www.deltatau.com/manuals/ If you're looking for the pinouts, they start on page 56 according to the pdf, or 50 according to the page numbers.
  21. Hey Kit, I believe what you're looking for starts on page 147 of the ACC-24E3 User Manual. You can find the User Manual here, but it should also be on that usb stick from the training class. http://forums.deltatau.com/filedepot/download.php?f=Power%20PMAC/Manuals/Hardware%20Reference%20Manual/ACC-24E3.pdf [FILE REMOVED] I doubt we have app notes on using it with that specific board, but I'll ask for you tomorrow. Also, did you hang up that picture of an AT-ST for me?
  22. You want both conditions to be inside the outer most parenthesis of the if statement. if ((OMEGA_POSITION / OMEGA_SCALER > OMEGA_LOW_THRESHOLD) && (OMEGA_POSITION / OMEGA_SCALER < OMEGA_HIGH_THRESHOLD)) or if (OMEGA_POSITION / OMEGA_SCALER > OMEGA_LOW_THRESHOLD && OMEGA_POSITION / OMEGA_SCALER < OMEGA_HIGH_THRESHOLD) As far as the error message goes, usually if I double click on the error it puts me on the correct line of the correct file in the IDE. If double clicking doesn't work, could you give me a screenshot of the error?
  23. I'm assuming the command you used was something like this. cx call timer(60) However that gives me the error. stdin:17:3: error #31: invalid data: cx call Timer(60) without pausing sys.time. Please let me know what you typed into the terminal.
×
×
  • Create New...