Jump to content
OMRON Forums

dzrong

Members
  • Posts

    187
  • Joined

  • Last visited

Everything posted by dzrong

  1. It seems the step three have some problem,linux tells me no such file or directory there even if i can open the file,we can see it from the pictures.
  2. Can i do this way to download my Subroutine in my HMI if my Subroutine don't use the variable names? If not,how can i do that?
  3. Yes,this is PowerPMAC forum,so it's about PowerPMAC. But i'm not sure how to compile the file in the user's HMI,using PPmac IDE? Thanks
  4. How to use telnet to download user's program? My idea is openning the program buffer and send the program line by line,but is there a simple way as Downloading() Method in Turbo? Thanks
  5. I can get the "whole count" from "Gate1.Chan[j].ServoCapt/2", but how can i get the subcounts of ACC51E if i use SIN/COS Encoder?Because i want to get the absolute position from Distance-coded. So i have to get current position and write it to "motor[].pos". Merry Christmas
  6. That's very helpful for me. Thank you very much.
  7. If the gantry motor is using absolut encoder,how can i make them alignement at the beginning? I know using "homez1,2" can make them find the absolute position,but i'm not sure whether the slave motor will alignement to the master in the same time. Thanks
  8. The point here is setting paremeter 7.10 to 4.08. That settle my problem.
  9. It's not a PPmac question,it's about CT driver(Unidrive SP). I'm using PPmac with CT driver,i wait to CT driver working at current loop mode, but it seems impossible to set it work at current loop mode. Who had used that? Can you give me a help! Rong form DTC
  10. PPmac need Surface-Normal Vector for Three-Dimensional Tool Radius Compensation,but as far as i know CAM can't us this information,such as UG. Which software of CAM can give us this information? Thanks
  11. dzrong

    ACC-58EY

    Where can i find the datasheet of the ACC-58EY?
  12. How can i make a filter for current feedback? Because the noise of the current feedback. What i had done is that,using Encode Table to deal the current feedback address for filter,and using plc to copy the result to Y address(Y:$10f0 store ADC1A input value,Y:$10f1 store ADC1B input value),and setting Ix82 eque $10f1,but it seems not work. Any suggestion? This is my code. ///////////////////////////////////////////////////////////////////////////////////// undefine all del all i8008 = $3f8005 i8009 = 98304 i8010 = 409600 i8011 = $3f8006 i8012 = 98304 i8013 = 409600 i8014 = $3f800D i8015 = 98304 i8016 = 409600 i8017 = $3f800E i8018 = 98304 i8019 = 409600 i8020 = $3f8015 i8021 = 98304 i8022 = 409600 i8023 = $3f8016 i8024 = 98304 i8025 = 409600 i8026 = $3f801D i8027 = 98304 i8028 = 409600 i8029 = $3f801E i8030 = 98304 i8031 = 409600 i8032 = $3f8105 i8033 = 98304 i8034 = 409600 i8035 = $3f8106 i8036 = 98304 i8037 = 409600 i8038 = $3f810D i8039 = 98304 i8040 = 409600 i8041 = $3f810E i8042 = 98304 i8043 = 409600 i8044 = $3f8115 i8045 = 98304 i8046 = 409600 i8047 = $3f8116 i8048 = 98304 i8049 = 409600 i8050 = $3f811D i8051 = 98304 i8052 = 409600 i8053 = $3f811E i8054 = 98304 i8055 = 409600 m7105 ->x:$350b,0,24,s m7106 ->x:$350e,0,24,s m7205 ->x:$3511,0,24,s m7206 ->x:$3514,0,24,s m7305 ->x:$3517,0,24,s m7306 ->x:$351a,0,24,s m7405 ->x:$351d,0,24,s m7406 ->x:$3520,0,24,s m7505 ->x:$3523,0,24,s m7506 ->x:$3526,0,24,s m7605 ->x:$3529,0,24,s m7606 ->x:$352c,0,24,s m7705 ->x:$352f,0,24,s m7706 ->x:$3532,0,24,s m7805 ->x:$3535,0,24,s m7806 ->x:$3538,0,24,s m6105->Y:$10f0,0,24,s m6106->Y:$10f1,0,24,s m6205->Y:$10f2,0,24,s m6206->Y:$10f3,0,24,s m6305->Y:$10f4,0,24,s m6306->Y:$10f5,0,24,s m6405->Y:$10f6,0,24,s m6406->Y:$10f7,0,24,s m6505->Y:$10f8,0,24,s m6506->Y:$10f9,0,24,s m6605->Y:$10fa,0,24,s m6606->Y:$10fb,0,24,s m6705->Y:$10fc,0,24,s m6706->Y:$10fd,0,24,s m6805->Y:$10fe,0,24,s m6806->Y:$10ff,0,24,s i182=$10f1 i882=$10ff open plcc1 clear m6105= m7105 m6106= m7106 m6205= m7205 m6206= m7206 m6305= m7305 m6306= m7306 m6405= m7405 m6406= m7406 m6505= m7505 m6506= m7506 m6605= m7605 m6606= m7606 m6705= m7705 m6706= m7706 m6805= m7805 m6806= m7806 close enable plcc1 i5=2 i8=0 /////////////////////////////////////////////////////////////////////////////
  13. Can i use Power Pmac Component Library in the VC++6.0 ? If i want to desine the HMI.
  14. Does Power PMAC support every accessories of UMAC? If not,what accessories Power PMAC can support? Does it support ACC-57E? Thanks
  15. I know what's the meaning of the L,C and D datas.The documens tells us that: //#define KinPosMotor1 L1 //#define KinPosMotor2 L2 //#define KinPosAxisX C6 //#define KinPosAxisY C7 //#define KinAxisUsed D0 But what is the meaning of R data,especially in CfromScript,and how to use it? Thanks
  16. I am using ACC24E2A with PPmac CPU,and I have setting the parametres of clock as this: Gate1[4].PwmPeriod = 1636 Gate1[4].PhaseClockDiv = 2 Gate1[4].ServoClockDiv = 0 According to old manual, I should set Sys.ServoPeriod = 0.0832875569661. But According to new manual,I should set Sys.ServoPeriod =0.1665751139322( 0.0832875569661 X 2). Which is right? If I set ServoPeriod as the old manual,when I control the motor to jog,the real motor's actual speed was right,but Motor[].ActVel give twice value. If I set ServoPeriod as the new manual,when I control the motor to jog,the real motor's actual speed was as twice as the Motor[].JogSpeed commanded. The feedrate was 100% in the two situation. What's the problem? Thanks
  17. That's a very good idea for my purpose! Thank you! Curtwilson. Thank you! Brad.
  18. Please see the picture,it's from Turbo. In PPmac,the Moter[x].DesPos seems be Net Positon(A+B in the picture) in Turbo.In the picture, A is called Command Position in Turbo.How can I get Command Position in PPmac? I mean,Is't a Data Structure there for Command Position? If I can find it,I can make 'B= -A' as the picture show in Turbo.I want to this way to achieve 'machine lock' in PPmac. Thanks
  19. I'm sorry for not speaking clear. I mean the real motor works at close mode.I want the DesignPosition become zero when program is running or jog command has be sent,but the sevro loop still closeloop.So the hardware enable signel must still there. Thanks
  20. We usually call this a phantom or virtual motor because for PMAC it is a motor but there is no real motor. This link gives you some setup in PowerPmac. Note that over time we have discoved it is much better to use the DAC out to make this than using the CMD position. http://forums.deltatau.com/showthread.php?tid=193&highlight=phantom This function may be called 'simulation mode' or 'machine lock',I'm not sure.I can used phantom to achieve. But I don't want to the axis working at open loop mode.If I want to the axis working at close loop mode when the machine working at 'simulation mode' or 'machine lock', what should I do? Thanks
  21. In Power PMAC,Is there a command as the same function as prelude1 in Turbo? Because I want to using it to achieve a function called BLOCK SKIP in CNC. Any other good idea to achieve BLOCK SKIP? Thanks
  22. dzrong

    Sample C App

    [quote='bradp' pid='259' dateline='1259107548'] This is a sample C application which shows how use a few of the basic PPmac API functions. For a more complete example look into the two sample projects installed with the PPmac IDE. //-------------------------------------------------------------------------------- #include #include // Global Rt/Gp Shared memory pointers //------------------------------------------------------------- // The following is a projpp created file from the User defines //------------------------------------------------------------- #include "../../Include/pp_proj.h" #define CHAR_BUF_SIZE 0x10000 int main(void) { double dMtr1Kp, dSysDdata1, dPartNum, dGateIOData, PPmacData; char response[CHAR_BUF_SIZE]; volatile GateArray1* Gate1; volatile GateIOStruct* GateIO; int result; if(InitLibrary()) // Access to PPmac API plus shared memory pointers { // pshm accesses PPmac structures like Motor[1].Servo.Kp and P-var array // pushm accesses PPmac user buffer like Sys.Ddata[] //------- Shared Memory Pointer Examples ------------------------------------------ dMtr1Kp = pshm->Motor[1].Servo.Kp; // read Motor[1].Servo.Kp dSysDdata1 = *((double *) (((double *) pushm) + 1)); // read Sys.Ddata[1] Gate1 = GetGate1MemPtr(4); // use CAPI to get pointer to the Gate1[4] structure if(Gate1) { dPartNum = Gate1->AdcStrobe >> 8; // lower 8-bits are not used in Gate1 } GateIO = GetGateIOMemPtr(0); // use CAPI to get pointer to the GateIO[0] structure if(GateIO) { dGateIOData = GateIO->DataReg[0] >> 8; // lower 8-bits are not used in GateIO } //------- PPmac API Examples ------------------------------------------------------ result = Command((char*) "#1"); // Send string to command processor with no response desired result = GetResponse((char*) "Motor[1].Servo.Kp", response, CHAR_BUF_SIZE, 0); // Send string to command processor and get an ASCII response result = GetPmacVar("Motor[1].Servo.Kp", &PPmacData); // Send string to command processor and get a numeric response CloseLibrary(); } return 0; } [/quote] Why I can't set ACC66E's datareg throw C app,the main code was here: while(1) { GateIO = GetGateIOMemPtr(4); if(GateIO) { GateIO->DataReg[3] = (unsigned)pshm->P[1] DataReg[4] = (unsigned)pshm->P[2] ; pshm->P[5] +=1; } usleep(1000000 + pshm->P[3] ); pshm->P[4] +=1; And I make sure the program was downloaded correctly.Then I change P1 and p2,GateIo[4].DataReg[3] andGateIo[4].DataReg[4],have nothing. Why? Thanks
  23. Thanks for you reply.That what I want exactly. So you pmac works in the close loop mode,I mean you get the feedback data from profibus. How many axis you control throw the profibus? 2ms was too slow for close loop control I think,can I control that using open loop way?I mean only send position command to servo drive throw profibus,the only question worried me was the precision of the position command,24bits? or higher?
  24. Hello everyone, Can I use ACC-72E with servo drive using any type of fieldbus ACC-72E supported? Does anyone have used that this way? If have,which type of fieldbus you had used? Thanks
  25. Hello Everyone, There is a function in the machine,called 'run empty', I can use encode table to achieve it in Turbo,usually set command position of one axis in encode table,and set Ix05 of the axis equal to encode table ,and then open Ix06. Who know how to set that in PowerPmac? I mean how to set command position of one axis into encode table. Thanks
×
×
  • Create New...