{ "info": { "author": "Daniel Leicht", "author_email": "daniel.leicht@gmail.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: Apache Software License", "Operating System :: OS Independent", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.6" ], "description": "# pylogix\n\nThis project will allow you to easily read/write values from tags in Rockwell Automation Logix based PLC's over Ethernet I/P using Python. PLC models inclued CompactLogix, ControlLogix and Micro8xx. Python2 and Python3 are both supported.\n\n## Getting Started\n\nThere are currently no dependencies so you can get going quickly without having to install any other prerequiste packages.\n\n### Installing\n\nYou can clone the repo with the following:\n\n```\ngit clone https://github.com/daniel-leicht/pylogix.git\ncd pylogix\npython setup.py install --user\n```\n\nOr you can install with pip:\n\n```\npip install pylogix\n```\n\n### Verifying Installation\n\nTo verify the installation on Linux, open the terminal and use the following commands:\n\n```\npython\nimport pylogix\npylogix.__version__\n```\n\n### Your First Script:\n\nThe cloned repository will come with many examples, I'll give one here. We'll read one simple tag and print out the value. All methods will return the Response class, which contains tag_name, value and status.\n\n```\nfrom pylogix import PLC\nwith comm as PLC()\n comm.IPAddress = '192.168.1.9'\n ret = comm.Read('MyTagName')\n print(ret.tag_name, ret.value, ret.status)\n```\n\nNOTE: If your PLC is in a slot other than zero (like can be done with ControLogix), then you can specify the slot with the following:\n\n```\ncomm.ProcessorSlot = 2\n```\n\nNOTE: If you are working with a Micro8xx PLC, you must set the Micro800 flag since the path is different:\n\n```\ncomm.Micro800 = True\n```\n\nIf you want to query module information for modules under a nested bus / backplane:\n```\n# Uses custom CIP routing path\ncomm.GetModuleProperties(custom_routing_path=[(1, 0), (7, 2)])\n```\nThe above code will fetch module information for slot 2 of a CompactLogix CPU CompactBus virtual backplane.\n\n\n### Other Features\n\nPylogix has features other than simply reading/writing. You can see all of them in the examples, I'll also list them here\n\n* Discover()\n* GetPLCTime()\n* SetPLCTime()\n* GetTagList()\n* GetModuleProperties(slot=0)\n\n## Authors\n* **Burt Peterson** - *Initial work*\n* **Dustin Roeder** - *Maintainer* - [dmroeder](https://github.com/dmroeder)\n* **Fernando B.** - *Contributor* - [kodaman2](https://github.com/kodaman2)\n* **Ottowayi** - *Contributor* - [ottowayi](https://github.com/ottowayi)\n* **Daniel Leicht** - *Contributor* - [daniel-leicht](https://github.com/daniel-leicht)\n\n## License\n\nThis project is licensed under Apache 2.0 License - see the [LICENSE](LICENSE.txt) file for details.\n\n## Acknowledgements\n\n* Archie of AdvancedHMI for all kinds pointers and suggestions.\n* Thanks to ottowayi for general python and good practice advice\n* Thanks to all of the users that have tested and provided feedback.", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/daniel-leicht/pylogix", "keywords": "", "license": "Apache License 2.0", "maintainer": "", "maintainer_email": "", "name": "pylogix", "package_url": "https://pypi.org/project/pylogix/", "platform": "", "project_url": "https://pypi.org/project/pylogix/", "project_urls": { "Homepage": "https://github.com/daniel-leicht/pylogix" }, "release_url": "https://pypi.org/project/pylogix/0.5.2/", "requires_dist": null, "requires_python": "", "summary": "Read/Write Rockwell Automation Logix based PLC's", "version": "0.5.2" }, "last_serial": 5885975, "releases": { "0.5.0": [ { "comment_text": "", "digests": { "md5": "65810e32c7c46de7bf0cabb10682073d", "sha256": "f2de60f8e680779c5b1dd230e62be30dd53343ec74d7afc68af90e3dcd795183" }, "downloads": -1, "filename": "pylogix-0.5.0.tar.gz", "has_sig": false, "md5_digest": "65810e32c7c46de7bf0cabb10682073d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 33441, "upload_time": "2019-09-18T13:57:12", "url": "https://files.pythonhosted.org/packages/27/03/4db46fba0cf1a20aec1b5193b5c82136dcb50abeb72804a4a5f5bf9882d8/pylogix-0.5.0.tar.gz" } ], "0.5.1": [ { "comment_text": "", "digests": { "md5": "31a23df2e848ac15925bde7a201627d7", "sha256": "e526126c2239a8036c9233466f4d4039bdb7fd5cf6475e105d5d7ccf22595b74" }, "downloads": -1, "filename": "pylogix-0.5.1.tar.gz", "has_sig": false, "md5_digest": "31a23df2e848ac15925bde7a201627d7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 33423, "upload_time": "2019-09-18T13:59:42", "url": "https://files.pythonhosted.org/packages/82/36/5c6691f668d977d4cbc6a881a957dee72c068d92a577bb6347e24f431597/pylogix-0.5.1.tar.gz" } ], "0.5.2": [ { "comment_text": "", "digests": { "md5": "a4aa889ba6646b3ff7d03f3e03b8781f", "sha256": "093212add4348510a611633cc03f30cc9dc1a5a2c416aacf260f97e393092a38" }, "downloads": -1, "filename": "pylogix-0.5.2.tar.gz", "has_sig": false, "md5_digest": "a4aa889ba6646b3ff7d03f3e03b8781f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 34247, "upload_time": "2019-09-25T15:35:09", "url": "https://files.pythonhosted.org/packages/8d/2a/c5e4a471fa9767051af22d2da4badb191100e1c7b7cec7e62bc01cbace49/pylogix-0.5.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "a4aa889ba6646b3ff7d03f3e03b8781f", "sha256": "093212add4348510a611633cc03f30cc9dc1a5a2c416aacf260f97e393092a38" }, "downloads": -1, "filename": "pylogix-0.5.2.tar.gz", "has_sig": false, "md5_digest": "a4aa889ba6646b3ff7d03f3e03b8781f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 34247, "upload_time": "2019-09-25T15:35:09", "url": "https://files.pythonhosted.org/packages/8d/2a/c5e4a471fa9767051af22d2da4badb191100e1c7b7cec7e62bc01cbace49/pylogix-0.5.2.tar.gz" } ] }