Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

Creating Augmented Reality and IoT Experiences With Thingworx

DZone's Guide to

Creating Augmented Reality and IoT Experiences With Thingworx

Thingworx is a comprehensive SaaS platform for creating AR experiences for Industry 4.0 and IoT-heavy workplaces. Here are some use cases to consider.

· IoT Zone ·
Free Resource

Augmented reality wearables have yet to prove themselves in the consumer space. Hyped devices have risen, and fallen, newer more powerful devices are yet to arrive in retail outlets, and a handful of games aside, consumers are yet to see the point. It’s different in the industrial space, where there are dozens of devices used daily by thousands around the globe, often connected to, and supplemented by data from IoT devices. Businesses use them to debug machine problems, train staff, record important metrics and more.

There are a handful of platforms and SaaS products for crafting these experiences, and I first encountered Thingworx while researching methods of creating documentation beyond pure text. They are highly effective for communicating best practices usage for complex hardware and enable trainers to involve interactive video, instant feedback and live data into a learning process. The Thingworx platform isn’t purely for education, but also for long-term control, monitoring, and analysis of machinery and data.

I interviewed Tanveer Saifee, a principal sales engineer at PTC/Thingworx about what they offer and attempted to dig beneath the surface of the dizzying array of solutions offered by Thingworx.

Getting Started

As is typical with companies that provide software for enterprise and large-scale usage, getting started with Thingworx tools and SDKs involves winding your way through a lot of forms to arrive at a 30-day trial. Once you do, the developer portal is overwhelming, there are a LOT of resources, which isn’t a bad thing per se, but figuring out the correct path for you and what you want to accomplish can be a difficult process. For example, there is more than one ‘getting started’ and ‘hello world’ example, so you’re left unsure which one to pick. I will attempt to guide you through highlights, but I got lost myself.

During my interview, Tanveer recommended a recent Harvard Business Review article that covered more on the company and included a sample application to play with. I also found this tutorial a useful starting point to see the capabilities and workflow.

Tooling and Capabilities

There is Thingworx studio, which appears to be a NodeJS application wrapped in a shim (curiously, not Electron) as all it does is open a web browser window. You use studio to assemble your assets and data sources (typically created in an external application) and connect them with actions and triggers to create AR scenes. For the IoT side, Thingworx has the foundationanalytics, and connectivity platforms to build interfaces and communications between IoT devices and analyze the data they generate. These tools include graphical applications as well as SDKs and APIs to bake into your software and hardware.

Thingworx Studio

The tools indicate some of the possibilities with the Thingworx platforms, and they use a similar structuring of terms to categorize their documentation, Connect, Analyze, Build, Experience, Secure, and Manage.

Moreover, this is still just scraping the surface, as a part of PTC, Thingworx also offers CAD software, product lifecycle management, service lifecycle management, and even calculation software.

Is It for You?

I started my interview with Tanveer excited about a certain aspect of Thingworx’s offering and discovered a vast world of possibilities, to such a degree that I am just starting to understand what I could create with the platform(s). It won’t be for everyone, but for those of you working in large industrial workplaces, I’d love to know what data heavy experiences you would create.

Topics:
iot ,augmented reality ,thingworx ,industrial iot

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}