{"id":17343,"date":"2016-11-09T10:00:07","date_gmt":"2016-11-09T18:00:07","guid":{"rendered":"https:\/\/blog.digilentinc.com\/?p=17343"},"modified":"2021-06-11T11:04:06","modified_gmt":"2021-06-11T18:04:06","slug":"how-to-make-a-physcial-interface-for-a-labview-vi","status":"publish","type":"post","link":"https:\/\/digilent.com\/blog\/how-to-make-a-physcial-interface-for-a-labview-vi\/","title":{"rendered":"How to Make a Physical Interface for a LabVIEW VI"},"content":{"rendered":"<p>In my last blog post &#8220;DIY Makey Makey using LabVIEW&#8221; I \u00a0talked about how I used a\u00a0<a href=\"https:\/\/digilent.com\/shop\/chipkit-wf32-wifi-enabled-microntroller-board-with-uno-r3-headers\/\">WF32<\/a> and <a href=\"https:\/\/digilent.com\/shop\/labview-home-bundle\/\"> LabVIEW<\/a> to recreate some of the basic functionality of a\u00a0<a href=\"http:\/\/makeymakey.com\">Makey Makey<\/a>. While I was making this Instructable however, I started to see the potential of using this type of device with LabVIEW. I realized that you would be able to quickly create a physical interface for a VI, so I decided to try and create a simple controller for my mouse and keyboard control VI using a piece of cardboard and copper tape.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-17206 size-medium aligncenter\" src=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2016\/10\/IMG_8397-e1478020590649-600x403.jpg\" alt=\"img_8397\" width=\"600\" height=\"403\" srcset=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2016\/10\/IMG_8397-e1478020590649-600x403.jpg 600w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2016\/10\/IMG_8397-e1478020590649-768x516.jpg 768w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2016\/10\/IMG_8397-e1478020590649-1024x688.jpg 1024w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2016\/10\/IMG_8397-e1478020590649-800x537.jpg 800w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><\/p>\n<p>I started by drawing 12 evenly spaced lines at the top, this is where each of the gator clips will attach. Next, I cut out 12 pieces of copper tape that I used as buttons for your controller. Then I use them to set up an outline for the controller. Once I had the button placement down I outlined the paths from the 12 lines at\u00a0top\u00a0to each of the buttons. I used a dotted line in areas where you are having to cross over one button to get to another.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-medium wp-image-17212 aligncenter\" src=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2016\/10\/IMG_8401-600x450.jpg\" alt=\"img_8401\" width=\"600\" height=\"450\" srcset=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2016\/10\/IMG_8401-600x450.jpg 600w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2016\/10\/IMG_8401-768x576.jpg 768w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2016\/10\/IMG_8401-1024x768.jpg 1024w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2016\/10\/IMG_8401-800x600.jpg 800w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2016\/10\/IMG_8401-1200x900-cropped.jpg 1200w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><\/p>\n<p>Next, I wrapped 12 shorts strips of copper tape around the top at each of the points that you marked earlier. Then I used the copper tape for all the lines that crossed over buttons.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-medium wp-image-17209 aligncenter\" src=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2016\/10\/IMG_8410-600x450.jpg\" alt=\"img_8410\" width=\"600\" height=\"450\" srcset=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2016\/10\/IMG_8410-600x450.jpg 600w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2016\/10\/IMG_8410-768x576.jpg 768w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2016\/10\/IMG_8410-1024x768.jpg 1024w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2016\/10\/IMG_8410-800x600.jpg 800w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2016\/10\/IMG_8410-1200x900-cropped.jpg 1200w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><\/p>\n<p>Next, I used electrical tape to cover the copper tape in all the areas that it crossed over another button. Then I outlined all the rest of the lines with copper tape.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-medium wp-image-17260 aligncenter\" src=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2016\/10\/IMG_8411-600x450.jpg\" alt=\"img_8411\" width=\"600\" height=\"450\" srcset=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2016\/10\/IMG_8411-600x450.jpg 600w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2016\/10\/IMG_8411-768x576.jpg 768w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2016\/10\/IMG_8411-1024x768.jpg 1024w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2016\/10\/IMG_8411-800x600.jpg 800w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><\/p>\n<p>Next, tape across your controller with electrical tape starting at the bottom and moving up. Once some part of a buttons copper tape has been covered by electrical tape place more copper tape in\u00a0it&#8217;s\u00a0place on top of the electrical tape.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-medium wp-image-17261 aligncenter\" src=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2016\/10\/IMG_8412-1-600x450.jpg\" alt=\"img_8412\" width=\"600\" height=\"450\" srcset=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2016\/10\/IMG_8412-1-600x450.jpg 600w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2016\/10\/IMG_8412-1-768x576.jpg 768w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2016\/10\/IMG_8412-1-1024x768.jpg 1024w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2016\/10\/IMG_8412-1-800x600.jpg 800w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2016\/10\/IMG_8412-1-1200x900-cropped.jpg 1200w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><\/p>\n<p>Finally,\u00a0you will be able to attach all of your buttons and connect your gator clips.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-medium wp-image-17207 aligncenter\" src=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2016\/10\/IMG_8429-600x450.jpg\" alt=\"img_8429\" width=\"600\" height=\"450\" srcset=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2016\/10\/IMG_8429-600x450.jpg 600w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2016\/10\/IMG_8429-768x576.jpg 768w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2016\/10\/IMG_8429-1024x768.jpg 1024w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2016\/10\/IMG_8429-800x600.jpg 800w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2016\/10\/IMG_8429-1200x900-cropped.jpg 1200w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><\/p>\n<p>When you touch one of the buttons while watching the wristband the voltage read by its analog channel will drop significantly. By setting a threshold voltage to 2.5 volts you will be able to tell when one of the buttons has been pressed. There are many uses for this circuit, in one of my other Instructables &#8220;<a href=\"http:\/\/www.instructables.com\/id\/DIY-Makey-Makey-Using-LabVIEW-and-a-WF32\/\">DIY Makey Makey using a WF32 and LabVIEW<\/a>&#8221; I use <a href=\"https:\/\/digilent.com\/shop\/labview-physical-computing-kit-with-chipkit-wf32\/\">LabVIEW<\/a> to allow this circuit to control my computer&#8217;s keyboard and mouse. The code below is a simplified version. You can add this code to any VI and then replace boolean controls on the front panel with one of these 12 local variables.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-medium wp-image-17482 aligncenter\" src=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2016\/11\/LabVIEW__Makey__Makey__Templatep-600x503.png\" alt=\"labview__makey__makey__templatep\" width=\"600\" height=\"503\" srcset=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2016\/11\/LabVIEW__Makey__Makey__Templatep-600x503.png 600w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2016\/11\/LabVIEW__Makey__Makey__Templatep.png 719w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><\/p>\n<p>Thank you for reading my blog post, and check out my\u00a0<a href=\"http:\/\/www.instructables.com\/id\/A-Great-Halloween-Prank-Using-a-BeagleBone-Black-a\/\">Instructable<\/a>\u00a0where I provide\u00a0detailed step by step instructions. If you are interested in making this project yourself but don&#8217;t have the right supplies you can purchase the <a href=\"https:\/\/digilent.com\/shop\/labview-physical-computing-kit-with-chipkit-wf32\/\">LabVIEW physical computing kit with chipKIT WF32<\/a>. This kit includes a copy of <a href=\"https:\/\/digilent.com\/shop\/labview-home-bundle\/\">LabVIEW 2014 home edition<\/a>, a <a href=\"https:\/\/digilent.com\/shop\/chipkit-wf32-wifi-enabled-microntroller-board-with-uno-r3-headers\/\">WF32<\/a>, and everything you will need to run <a href=\"https:\/\/www.labviewmakerhub.com\/doku.php?id=learn:tutorials:libraries:linx:3-0:beaglebone-black-setup\">LINX 3.0<\/a> and start making projects. Also make sure to check out the homemade\u00a0<a href=\"http:\/\/makeymakey.com\">Makey Makey<\/a>, which is sure to provide hours of entertainment. Please comment with any questions or comments you may have.<\/p>\n<div class='watch-action'><div class='watch-position align-left'><div class='action-like'><a class='lbg-style6 like-17343 jlk' data-task='like' data-post_id='17343' data-nonce='ee750c7abc' rel='nofollow'><img src='https:\/\/digilent.com\/blog\/wp-content\/plugins\/wti-like-post-pro\/images\/pixel.gif' title='Like' \/><span class='lc-17343 lc'>0<\/span><\/a><\/div><div class='action-unlike'><a class='unlbg-style6 unlike-17343 jlk' data-task='unlike' data-post_id='17343' data-nonce='ee750c7abc' rel='nofollow'><img src='https:\/\/digilent.com\/blog\/wp-content\/plugins\/wti-like-post-pro\/images\/pixel.gif' title='Unlike' \/><span class='unlc-17343 unlc'>0<\/span><\/a><\/div><\/div> <div class='status-17343 status align-left'>Be the 1st to vote.<\/div><\/div><div class='wti-clear'><\/div>","protected":false},"excerpt":{"rendered":"<p>Austin shares the last installment in his recent project series&#8230; a physical control system for a LabVIEW VI!<\/p>\n","protected":false},"author":42,"featured_media":17261,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4327,4323,1561],"tags":[],"ppma_author":[4493],"class_list":["post-17343","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-projects","category-software","category-applications"],"jetpack_featured_media_url":"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2016\/10\/IMG_8412-1.jpg","authors":[{"term_id":4493,"user_id":42,"is_guest":0,"slug":"astanton","display_name":"Austin Stanton","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/056fddaefc60a1f99c226ea5757a8c41?s=96&d=mm&r=g","author_category":"","user_url":"","last_name":"Stanton","last_name_2":"","first_name":"Austin","first_name_2":"","job_title":"","description":""}],"post_mailing_queue_ids":[],"_links":{"self":[{"href":"https:\/\/digilent.com\/blog\/wp-json\/wp\/v2\/posts\/17343","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/digilent.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/digilent.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/digilent.com\/blog\/wp-json\/wp\/v2\/users\/42"}],"replies":[{"embeddable":true,"href":"https:\/\/digilent.com\/blog\/wp-json\/wp\/v2\/comments?post=17343"}],"version-history":[{"count":0,"href":"https:\/\/digilent.com\/blog\/wp-json\/wp\/v2\/posts\/17343\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/digilent.com\/blog\/wp-json\/wp\/v2\/media\/17261"}],"wp:attachment":[{"href":"https:\/\/digilent.com\/blog\/wp-json\/wp\/v2\/media?parent=17343"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/digilent.com\/blog\/wp-json\/wp\/v2\/categories?post=17343"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/digilent.com\/blog\/wp-json\/wp\/v2\/tags?post=17343"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/digilent.com\/blog\/wp-json\/wp\/v2\/ppma_author?post=17343"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}