=========
mini_afsd
=========
mini_afsd is a program for controlling a miniturized additive friction stir deposition (AFSD) machine.
* For Python 3.7+
* Source Code: https://github.com/RyTheGuy355/MiniAFSDCode
.. contents:: **Contents**
:depth: 1
Introduction
------------
This repository contains code for controlling a miniturized AFSD machine and
is used by the `Yu group at Virginia Tech <https://yu.mse.vt.edu>`_.
Communication with the machine is achieved using `FluidNC <https://github.com/bdring/FluidNC>`_,
and future modifications to the firmware or code inputs can be helped by looking
through FluidNC's documentation.
Installation
------------
Dependencies
~~~~~~~~~~~~
Driver Dependencies
^^^^^^^^^^^^^^^^^^^
The `LJM` driver from LabJack must be installed to interface with the
LabJack for measuring the thermocouple outputs, which can be downloaded from
https://labjack.com/support/software/installers/ljm.
The driver needed for computers to properly connect to the serial
port's USB interface is available from
https://oemdrivers.com/usb-cp2104-usb-to-uart-driver.
(Change this in the future if the connector changes)
Python Dependencies
^^^^^^^^^^^^^^^^^^^
mini_afsd requires `Python <https://python.org>`_ version 3.7 or later
and the following Python libraries:
* `labjack-ljm <https://pypi.org/project/labjack-ljm/>`_
* `matplotlib <https://pypi.org/project/matplotlib/>`_ (>=3.4)
* `pyserial <https://pypi.org/project/pyserial/>`_
All of the required Python libraries should be automatically installed when
installing mini_afsd using any of the installation methods below.
Installing Python
~~~~~~~~~~~~~~~~~
Python can be installed multiple ways:
* If on Windows, the easiest way is to use `WinPython <https://winpython.github.io/>`_. The recommended
installation file (as of June 10, 2022) is WinPython64-3.10.4.0 (or WinPython64-3.10.4.0dot if you don't
want any preinstalled libraries).
* Use `Anaconda <https://www.anaconda.com/>`_, which comes with many libraries preinstalled.
* Install from Python's official source, https://www.python.org/. Follow the instructions listed at
https://packaging.python.org/en/latest/tutorials/installing-packages/#requirements-for-installing-packages
to ensure Python and the Python package manager `pip <https://pip.pypa.io>`_ are correctly installed.
Stable Release
~~~~~~~~~~~~~~
mini_afsd can be installed from `pypi <https://pypi.org/project/mini_afsd>`_
using `pip <https://pip.pypa.io>`_, by running the following command in the terminal:
.. code-block:: console
pip install -U mini_afsd
Development Version
~~~~~~~~~~~~~~~~~~~
The sources for mini_afsd can be downloaded from the `GitHub repo`_.
To install the current version of mini_afsd from GitHub, run:
.. code-block:: console
pip install https://github.com/RyTheGuy355/MiniAFSDCode/zipball/main
.. _GitHub repo: https://github.com/RyTheGuy355/MiniAFSDCode
Optional Dependencies
~~~~~~~~~~~~~~~~~~~~~
While not needed, an Arduino IDE (available from https://www.arduino.cc/en/software)
can be used when connected to the serial port of the mill to get more detailed feedback
on the messages sent to and from the port.
Quick Start
-----------
For default usage, mini_afsd can be ran from the a terminal (the command line if
Python was install universally, from an Anaconda terminal if Python was installed with
Anaconda, or from the WinPython Command Prompt if Python was installed using WinPython) using:
.. code-block:: console
python -m mini_afsd
To list out the various options when using mini_afsd from the terminal, simply do:
.. code-block:: console
python -m mini_afsd -h
Alternatively, mini_afsd can be used from a Python file by doing the following:
.. code-block:: python
from mini_afsd import Controller
Controller().run()
Contributing
------------
Contributions are welcomed and greatly appreciated. For information on
submitting bug reports, pull requests, or general feedback, please refer
to the `contributing guide`_.
.. _contributing guide: https://github.com/RyTheGuy355/MiniAFSDCode/tree/main/docs/contributing.rst
License
-------
mini_afsd is all rights reserved. For more information, refer to the license_.
.. _license: https://github.com/RyTheGuy355/MiniAFSDCode/tree/main/LICENSE.txt
Author
------
* Ryan Gottwald <insert_email_here>
Raw data
{
"_id": null,
"home_page": "https://github.com/RyTheGuy355/MiniAFSDCode",
"name": "mini-afsd",
"maintainer": "Donald Erb",
"docs_url": null,
"requires_python": ">=3.7",
"maintainer_email": "derb15@vt.edu",
"keywords": "AFSD,additive friction stir deposition,engineering",
"author": "Ryan Gottwald",
"author_email": "",
"download_url": "https://files.pythonhosted.org/packages/e6/26/5b20004891bf023e92c1a5880c8db1cca28ef013241e1e903888300fa9e4/mini_afsd-1.2.1.tar.gz",
"platform": null,
"description": "=========\r\nmini_afsd\r\n=========\r\n\r\nmini_afsd is a program for controlling a miniturized additive friction stir deposition (AFSD) machine.\r\n\r\n* For Python 3.7+\r\n* Source Code: https://github.com/RyTheGuy355/MiniAFSDCode\r\n\r\n\r\n.. contents:: **Contents**\r\n :depth: 1\r\n\r\n\r\nIntroduction\r\n------------\r\n\r\nThis repository contains code for controlling a miniturized AFSD machine and\r\nis used by the `Yu group at Virginia Tech <https://yu.mse.vt.edu>`_.\r\n\r\nCommunication with the machine is achieved using `FluidNC <https://github.com/bdring/FluidNC>`_,\r\nand future modifications to the firmware or code inputs can be helped by looking\r\nthrough FluidNC's documentation.\r\n\r\n\r\nInstallation\r\n------------\r\n\r\n\r\nDependencies\r\n~~~~~~~~~~~~\r\n\r\n\r\nDriver Dependencies\r\n^^^^^^^^^^^^^^^^^^^\r\n\r\nThe `LJM` driver from LabJack must be installed to interface with the\r\nLabJack for measuring the thermocouple outputs, which can be downloaded from\r\nhttps://labjack.com/support/software/installers/ljm.\r\n\r\n\r\nThe driver needed for computers to properly connect to the serial\r\nport's USB interface is available from\r\nhttps://oemdrivers.com/usb-cp2104-usb-to-uart-driver.\r\n(Change this in the future if the connector changes)\r\n\r\n\r\nPython Dependencies\r\n^^^^^^^^^^^^^^^^^^^\r\n\r\nmini_afsd requires `Python <https://python.org>`_ version 3.7 or later\r\nand the following Python libraries:\r\n\r\n* `labjack-ljm <https://pypi.org/project/labjack-ljm/>`_\r\n* `matplotlib <https://pypi.org/project/matplotlib/>`_ (>=3.4)\r\n* `pyserial <https://pypi.org/project/pyserial/>`_\r\n\r\n\r\nAll of the required Python libraries should be automatically installed when\r\ninstalling mini_afsd using any of the installation methods below.\r\n\r\n\r\nInstalling Python\r\n~~~~~~~~~~~~~~~~~\r\n\r\nPython can be installed multiple ways:\r\n\r\n* If on Windows, the easiest way is to use `WinPython <https://winpython.github.io/>`_. The recommended\r\n installation file (as of June 10, 2022) is WinPython64-3.10.4.0 (or WinPython64-3.10.4.0dot if you don't\r\n want any preinstalled libraries).\r\n* Use `Anaconda <https://www.anaconda.com/>`_, which comes with many libraries preinstalled.\r\n* Install from Python's official source, https://www.python.org/. Follow the instructions listed at\r\n https://packaging.python.org/en/latest/tutorials/installing-packages/#requirements-for-installing-packages\r\n to ensure Python and the Python package manager `pip <https://pip.pypa.io>`_ are correctly installed.\r\n\r\n\r\nStable Release\r\n~~~~~~~~~~~~~~\r\n\r\nmini_afsd can be installed from `pypi <https://pypi.org/project/mini_afsd>`_\r\nusing `pip <https://pip.pypa.io>`_, by running the following command in the terminal:\r\n\r\n.. code-block:: console\r\n\r\n pip install -U mini_afsd\r\n\r\n\r\nDevelopment Version\r\n~~~~~~~~~~~~~~~~~~~\r\n\r\nThe sources for mini_afsd can be downloaded from the `GitHub repo`_.\r\nTo install the current version of mini_afsd from GitHub, run:\r\n\r\n.. code-block:: console\r\n\r\n pip install https://github.com/RyTheGuy355/MiniAFSDCode/zipball/main\r\n\r\n\r\n.. _GitHub repo: https://github.com/RyTheGuy355/MiniAFSDCode\r\n\r\n\r\nOptional Dependencies\r\n~~~~~~~~~~~~~~~~~~~~~\r\n\r\nWhile not needed, an Arduino IDE (available from https://www.arduino.cc/en/software)\r\ncan be used when connected to the serial port of the mill to get more detailed feedback\r\non the messages sent to and from the port.\r\n\r\n\r\nQuick Start\r\n-----------\r\n\r\nFor default usage, mini_afsd can be ran from the a terminal (the command line if\r\nPython was install universally, from an Anaconda terminal if Python was installed with\r\nAnaconda, or from the WinPython Command Prompt if Python was installed using WinPython) using:\r\n\r\n.. code-block:: console\r\n\r\n python -m mini_afsd\r\n\r\nTo list out the various options when using mini_afsd from the terminal, simply do:\r\n\r\n.. code-block:: console\r\n\r\n python -m mini_afsd -h\r\n\r\n\r\nAlternatively, mini_afsd can be used from a Python file by doing the following:\r\n\r\n.. code-block:: python\r\n\r\n from mini_afsd import Controller\r\n\r\n Controller().run()\r\n\r\n\r\nContributing\r\n------------\r\n\r\nContributions are welcomed and greatly appreciated. For information on\r\nsubmitting bug reports, pull requests, or general feedback, please refer\r\nto the `contributing guide`_.\r\n\r\n.. _contributing guide: https://github.com/RyTheGuy355/MiniAFSDCode/tree/main/docs/contributing.rst\r\n\r\n\r\nLicense\r\n-------\r\n\r\nmini_afsd is all rights reserved. For more information, refer to the license_.\r\n\r\n.. _license: https://github.com/RyTheGuy355/MiniAFSDCode/tree/main/LICENSE.txt\r\n\r\n\r\nAuthor\r\n------\r\n\r\n* Ryan Gottwald <insert_email_here>\r\n",
"bugtrack_url": null,
"license": "",
"summary": "A program for controlling a miniturized additive friction stir deposition (AFSD) machine.",
"version": "1.2.1",
"split_keywords": [
"afsd",
"additive friction stir deposition",
"engineering"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "c4c32b032f13dfb6df6b69c14c07d12530a86215abcafc070c3a2969b7a77696",
"md5": "a061126a6d910add5f1e90dfb3cbb0bf",
"sha256": "213b59db8f11ef05856cc6405f37f2115a9d7d64b4f874f805d3622ab0d0dd2e"
},
"downloads": -1,
"filename": "mini_afsd-1.2.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "a061126a6d910add5f1e90dfb3cbb0bf",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.7",
"size": 24133,
"upload_time": "2023-04-26T16:30:57",
"upload_time_iso_8601": "2023-04-26T16:30:57.049764Z",
"url": "https://files.pythonhosted.org/packages/c4/c3/2b032f13dfb6df6b69c14c07d12530a86215abcafc070c3a2969b7a77696/mini_afsd-1.2.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "e6265b20004891bf023e92c1a5880c8db1cca28ef013241e1e903888300fa9e4",
"md5": "86fbc944ac507a365a542de0f0545cf4",
"sha256": "05e7f2bf3d791eb531edcb3d40d7abb7cc6c798534f784027cfe890ea3677afb"
},
"downloads": -1,
"filename": "mini_afsd-1.2.1.tar.gz",
"has_sig": false,
"md5_digest": "86fbc944ac507a365a542de0f0545cf4",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7",
"size": 23981,
"upload_time": "2023-04-26T16:30:59",
"upload_time_iso_8601": "2023-04-26T16:30:59.065141Z",
"url": "https://files.pythonhosted.org/packages/e6/26/5b20004891bf023e92c1a5880c8db1cca28ef013241e1e903888300fa9e4/mini_afsd-1.2.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-04-26 16:30:59",
"github": true,
"gitlab": false,
"bitbucket": false,
"github_user": "RyTheGuy355",
"github_project": "MiniAFSDCode",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "mini-afsd"
}