Jump to content
OMRON Forums

artag

Members
  • Posts

    19
  • Joined

  • Last visited

Everything posted by artag

  1. I'v had this too, but not consistently. I can kill the IDE, restart, and it will be fine. -adrian
  2. There was no error detected in a return value : it's simply that my debugging output showed a spurious string, apparently in the value returned by ConvertSymbolicToPMACExp. However, working from your example and incorporating bits of test code, I found that the problem was entirely in the Send I was using to check the result. This can more simply be shown up by : int main(void) { char resp[255]; InitLibrary(); Send(1, "aaa aaa\n"); Send(1, "AAA"); Send(1, "bbb \n bbb"); Send(1, "BBB"); CloseLibrary(); return 0; } which produces the output Port 1: aaa aaa Port 1: AAA Port 1: bbb InvalidResponse: bbb Port 1: BBB So it seems Send() doesn't like to have a newline in the string, unless it's at the end. This isn't particularly important to me - I only had a newline there because ConvertSymbolicToPMACExp() happens to append one to the result. I guess it might be related to the IDE window that extracts and prints unsolicited messages, or the 'Port n' formatting, rather than Send() itself. -adrian
  3. Calling is probably an inaccurate term : maybe I should have said invoking or launching. I'm actually calling the function GetResponse with the string "cx ldata.coord=1; call 100000;" . However, that part works OK - it's the assumption that the program created by name in the IDE has the numeric label 100000 that I want to avoid. (I tried using the name in the string above but that wasn't successful). So I'm using ConvertSymbolicToPMACExp to first obtain the numeric label from the name given in the 'open subprog' statement. Again, it seems to work but I get that additional response. -adrian
  4. I need to execute a named subprog from a background C program. It seems that I need to translate the name into the program number before I can do this, and the function ConvertSymbolicToPMACExp() will do this for me. However, it returns the result "100000\nInvalidResponse:". The 100000 is the value I need : can I safely ignore the 'InvalidResponse' or does it signify something important ? I would prefer to have the IDE convert the name for me at compile time rather than perform the lookup, but I can only find variable name translations (in pp_proj.h), not prog and subprog names. Is there a way to do this ? -adrian
  5. There may be some issues related to network access - I've found there are times when the IDE hangs completely but can be kicked into life by starting a browser (which then reauthenticates with the works proxy server ..). However, network sniffing doesn't show anything continuous on ethernet and I haven't caught the reason for the slowdown - just a 'phone home' to microsoft at startup. If intellisense is what causes that list of inappropriate completions to hang around and slow down your typing, I can understand why you'd want to disable it. Tools->Options->Text Editor->C language->General->Auto List members is the one you want. -adrian
  6. [quote='agovande' pid='1329' dateline='1297360054'] If I understand correctly... 1. you have installed the IDE on 32 Bit XP with Service Pack 3. 2. You want to share the IDE to be used by different people from same machine Is this corect? Just a note: As you know the IDE is based on Visual Studio which needs administrative rights to function. Atul [/quote] Yes, that's correct. All the users have admin rights. -adrian
  7. [quote='bradp' pid='1292' dateline='1297182059'] What OS you are using? What was the install path? [/quote] I'm using XP pro SP3, the Feb2011 IDE, and accepted the default install path in Program Files. I'm trying to install a system such that multiple users can use the machine containing the IDE and the connection to the PPMAC. Ideally, they should have independent or at least predictable environments. The link you mention is what gave me the hint to copy files from one user to another, but I don't have any network drives used for normal folders. I have gone through the exercise of reinstalling the IDE sebveral times, using an identical base system (ghost image) each time. What I think I've found is that : The user who installs the system gets normal behaviour Other users get some subset, eg reduced tool menu entries Tool menu entries can be added as described above, or will appear if that user repeats the installation as himself Administrator seems to operate in the same way as an user who has administrator privileges : I haven't yet found a difference between installations or first installs done by administrator and those done by other users. If another user does the installation, the administrator gets a broken installation in the same way as any user does. I'm particularly stuck at the moment with the issue of saving the layout of panes displayed by the IDE on startup. The user who did the install is shown an initial layout with the solution explorer, watch windows etc. etc. All other users get an initial blank screen and no dialog box offering a connection to the PPMAC. These things can be done manually, but are not saved : when the IDE is restarted the setup is gone. It is not restored by loading a project.
  8. Can someone explain the meaning of this error, please ? It appears in the terminal window during initial connection. Building the project appears to work (is it the same sort of sync that occurs during build?) but some operations such as the motor setup report errors such as 'ppmaccommon.CreateMotorInterface does not exist' I am having numerous frustrating problems of this sort in attempting to set up the latest IDE version. For instance, I cannot save the project settings that include the window layout. It seems only the user who installed the IDE can do that - all others get a blank screen on startup and any changes are not saved. Addins did not appear until I copied the Addins directory from the installing user's directory to another place, and then added that path to the tool's add-in file paths for other users. -adrian
  9. In trying to get my project to build again under the new IDE, I'm consistently getting this error in pp_error.log. I also have an empty pp_proj.h file; could this be why ? 2 [main] projpp 3068 _cygtls::handle_exceptions: Exception: STATUS_ACCESS_VIOLATION 15948 [main] projpp 3068 open_stackdumpfile: Dumping stack trace to projpp.exe.stackdump The stackdump contains : Exception: STATUS_ACCESS_VIOLATION at eip=004060F2 eax=00000000 ebx=00000000 ecx=00000000 edx=0022A004 esi=611021A0 edi=0040CF90 ebp=0022A038 esp=0022A010 program=C:\Program Files\Delta Tau Data Systems Inc\2.0\Power PMAC Suite\powerpc-460-linux-gnu\bin\projpp.exe, pid 3068, thread main cs=001B ds=0023 es=0023 fs=003B gs=0000 ss=0023 Stack trace: Frame Function Args 0022A038 004060F2 (00000000, 0022A7A0, 00010000, 0022A074) 0022AFC8 00402732 (0022C450, 006827D4, 0068269C, 0068276C) 0022CC88 00401D3D (0040F940, 0040E37C, 0040E32D, 0040FF10) 0022CCC8 004013C0 (00000001, 00682650, 00680090, 61010E8C) 0022CD98 610060D8 (00000000, 0022CDD0, 61005450, 0022CDD0) 61005450 61004416 (0000009C, A02404C7, E8611021, FFFFFF48) 827969 [main] projpp 3068 _cygtls::handle_exceptions: Exception: STATUS_ACCESS_VIOLATION 853029 [main] projpp 3068 _cygtls::handle_exceptions: Error while dumping state (probably corrupted stack) Furthermore, if I work around the problems this creates in the build process and continue to download, I get Projpp Error Projpp has exited with : Segmentation fault root@192.168.0.200:/opt/ppmac# Download process failed with a segmentation fault. Which is apparently the same utility failing in the Linux environment. -adrian
  10. [quote='JeffLowe' pid='1258' dateline='1296581974'] [quote='agovande' pid='1256' dateline='1296579486'] You can also look at the log we create in installtion. The location... \Program Files\Delta Tau Data Systems Inc\2.0\Power PMAC Suite\ConfigFiles\Deltatau_Installation.log When do you get the error in the begining or in the middle ? I will need more information about the error so I can help. [/quote] c:\Program Files\Delta Tau Data Systems inc exists but there is nothing stored under that, no 2.0 or any other subdirectories. [/quote] I've got past a similar problem by renaming (to hide them) the installShield cache in Program\ Files/InstallShield\ Installation\ Information. Possibly a bit drastic but perhaps will help identify the problem. -adrian
  11. Is it sufficient to run as a user that has administrator privileges ? I have done that, but when testing the installation by building the sample application there were many errors reported from the realtime part of the application. Commenting out the contents of usercode.c gets rid of most of them. In an attempt to sort out the above proble, I have attempted to reinstall. However, the initial uninstall failed and all attempts to run the installer again result in the error 'CreateFile failed'.
  12. [quote='bradp' pid='1118' dateline='1295370455'] I changed your code a little to see what part was going wrong. With this you can see the correct values in P0 to P3 which means that the printf is having the problem. Printf is probably using emulation and that might be where the problem originates. I have no solution for that yet but hopefully this information will let you continue. [code] { int i; double dd = 0.0; long long ll = 0; for (i = 0; i < 4; ++i) { dd += 1000000001.0; ll = dd; pshm->P[i]=ll; printf("int i %d; double dd %f; long long ll %lld\n", i,dd,ll); } } [/code] [/quote] I tried to work on from this, but still failed. The reason becomes apparent if I change the code to [code] dd += 1000000001.01; ll = dd; pshm->P[i]=ll; [/code] This produces the output : int i 20; double dd 1000000001.010000; long long ll 0 int i 21; double dd 2000000002.020000; long long ll 0 int i 22; double dd 3000000003.030000; long long ll 0 int i 23; double dd 4000000004.040000; long long ll 0 But if the values of P20-P24 are queried in the terminal window: P20 P20=1000000001.00999999 P21 P21=2000000002.01999998 Since the fractional part of dd should have been lost when converting to a long long, I suspect that the compiler has optimised the assignment and assigned dd directly to P[n] without going via ll. Is there an option to output the assembler listing so I can check this ? -adrian
  13. [quote='artag' pid='1164' dateline='1295866736'] [quote='bradp' pid='1157' dateline='1295638521'] In general the files you need to save are the ones you see in the IDE solution explorer. [/quote] The source files are OK, it's the ones that actually hold the IDE's configuration that I'm having difficulty with. One of these (I think) does appear in the explorer - pp_proj.ini. However, that isn't sufficient - when I open the IDE I need to nominate an _sln file or a .pproj file in order to define the rest of the project files. Yet if I retrieve these files from sourcesafe, the IDE reports that the ppproj file is too old and I need to rebuild the project manually. I don't know whether the IDE is missing another file that I didn't archive, or if perhaps sourcesafe corrupts them. -adrian [/quote] With some further work, I have got it working. It seems that it's necessary to have a number of files read/writable, rather than being able to work on a read-only copy of the project. Furthermore, the IDE tends to crash or generate misleading error messages if the files are not writable. -adrian
  14. [quote='bradp' pid='1157' dateline='1295638521'] In general the files you need to save are the ones you see in the IDE solution explorer. [/quote] The source files are OK, it's the ones that actually hold the IDE's configuration that I'm having difficulty with. One of these (I think) does appear in the explorer - pp_proj.ini. However, that isn't sufficient - when I open the IDE I need to nominate an _sln file or a .pproj file in order to define the rest of the project files. Yet if I retrieve these files from sourcesafe, the IDE reports that the ppproj file is too old and I need to rebuild the project manually. I don't know whether the IDE is missing another file that I didn't archive, or if perhaps sourcesafe corrupts them. -adrian
  15. I'm not too bothered about it working from within the IDE - Subversion is pretty nice from Explorer already. But I'm not sure which files need to be saved and which are autogenerated - I often seem to end up with errors reporting that the .ppproj file is too old and cannot be used, or the IDE crashing (that was apparently caused by leaving pp_proj.ini read-only, which wouldn't be a problem with svn). -adrian
  16. Is anybody using source code management with the PPMAC Suite ? I've struggled to use the built-in link to Source Safe, and in any case would like to understand the requirements of the IDE (which files should be saved, etc.) as I plan to move to Subversion. -adrian
  17. I have now installed the service pack, updating the IDE to 28/09/10 1.1.2.45 and get the same result.
  18. I'm having some difficulty in using the 'long long' data type on the PPMAC. I'm using IDE 22/07/2010 1.1.1026, firmware 1.2.1.5 and this example code : [code] #include int main(void) { int i; double dd = 0.0; long long ll = 0; for (i = 0; i < 4; ++i) { dd += 1000000001.0; ll = dd; printf("int i %d; double dd %f; long long ll %lld\n", i,dd,ll); } } [/code] I can compile this on another machine (x86 linux), and get the result I expect : [code] int i 0; double dd 1000000001.000000; long long ll 1000000001 int i 1; double dd 2000000002.000000; long long ll 2000000002 int i 2; double dd 3000000003.000000; long long ll 3000000003 int i 3; double dd 4000000004.000000; long long ll 4000000004 [/code] I can also compile it natively on the PPMAC and get the same result. However, if I compile it using the IDE, I get : [code] int i 0; double dd 1000000001.000000; long long ll 0 int i 1; double dd 2000000002.000000; long long ll 0 int i 2; double dd 3000000003.000000; long long ll 0 int i 3; double dd 4000000004.000000; long long ll 0 [/code] I guess this is due to a difference between the cross and native compilers, either due to the crosscompilation or merely an older version. Does the forthcoming IDE release fix this ? -adrian
  19. This works as far as it goes, but I want to use the 'indefinite;' gather mode, where Gather.Enable = 3. I also want to acquire the data in a binary format rather than the csv that gather() logs. I'd hope to be able to do all that with a background C program, but could do wiith a little help on the C interface to the gather system. -artag
×
×
  • Create New...