산업기술
이 블로그는 PLCnext에서 Go를 사용하여 애플리케이션을 구축하는 첫 번째 단계를 안내합니다. 바둑에 익숙하지 않은 분들을 위해 참조 웹사이트 www.golang.org
를 인용하고 싶습니다.Go를 좋아하는 특별한 이유는 웹 응용 프로그램을 만들기 쉽지만 여전히 정적 바이너리로 컴파일되므로 프로그램을 배포하기 위해 PLCnext 컨트롤러에 패키지를 설치할 필요가 없기 때문입니다.
이 블로그는 두 개의 작은 프로그램으로 PLCnext에 대한 컴파일만 처리합니다. 컴파일이 잘 되는지 확인하는 고전적인 HelloWorld 프로그램과 Go의 힘을 보여주는 작은 REST API 호출. 이 블로그를 만들 때 다음을 사용했습니다.
자, HelloWorld 애플리케이션을 시작하겠습니다. HelloWorld.go라는 새 파일을 만들고 파일 안에 HelloWorld 예제의 코드를 붙여넣습니다. 파일을 저장하고 터미널을 열고 올바른 디렉토리에 있는지 확인하십시오.
아래 명령을 사용하여 Go 코드를 빌드하고 실행합니다. 모든 것이 올바르게 설치되었으면 Hello World가 터미널에 표시되어야 합니다. 애플리케이션을 빌드하는 중일 때 이 명령을 사용할 수 있습니다.
go run HelloWorld.go
내가 말했듯이 정적 바이너리로 코드를 빌드하는 것도 가능합니다. 이것은 아래의 첫 번째 명령으로 수행되며 다음 명령은 새로 생성된 바이너리를 실행합니다. 모든 것이 잘되면 Hello World가 터미널에 다시 표시됩니다.
go build HelloWorld.go
./HelloWorld
PLCnext 컨트롤러에서 이 바이너리를 실행하려고 하면 다음과 같은 결과가 나타납니다.
./HelloWorld: cannot execute binary file: Exec format error
이는 Ubuntu 머신과 PLCnext의 아키텍처가 일치하지 않기 때문입니다. 운 좋게도 PLCnext에서 작동하는 바이너리를 만드는 것은 상당히 쉽습니다(그러나 이 새로운 바이너리는 Ubuntu 시스템에서 실행되지 않습니다). 아래와 같이 빌드 환경을 설정하면. Go는 PLCnext에 적합한 바이너리를 생성합니다.
env GOOS=linux GOARCH=arm GOARM=7 go build
이 예에서는
env GOOS=linux GOARCH=arm GOARM=7 go build HelloWorld.go
이 파일을 컨트롤러로 전송하고 실행하면 Hello World가 다시 표시되는 것을 볼 수 있습니다. 그렇다면 축하합니다. PLCnext 컨트롤러를 위한 첫 번째 Go 프로그램을 작성했습니다! REST API 호출을 살펴보고 필요에 맞게 수정하세요!
이전 단계에 문제가 있습니까?
chmod +x HelloWorld로 파일을 실행 가능하게 만드셨습니까?
package main
import "fmt"
func main() {
fmt.Println("hello world")
}
go
package main
import (
"crypto/tls"
"io/ioutil"
"log"
"net/http"
)
func main() {
http.DefaultTransport.(*http.Transport).TLSClientConfig = &tls.Config{InsecureSkipVerify: true} // Disable TLS check due to bad certificate
MakeRequest()
}
func MakeRequest() {
resp, err := http.Get("https://192.168.18.10/_pxc_api/api/variables?paths=Arp.Plc.Eclr/MainInstance.bInputs") // change to your IP adress and variables
if err != nil {
log.Fatalln(err)
}
body, err := ioutil.ReadAll(resp.Body)
if err != nil {
log.Fatalln(err)
}
log.Println(string(body))
}
산업기술
이 데모 프로젝트는 PLCnext Engineer에서 eHMI와 함께 사용할 맞춤형 키패드를 생성하는 방법을 보여줍니다. 이것은 BWP 2000 시리즈 HMI 터치 스크린을 위한 해결 방법으로 개발되었지만 WP 4000 시리즈 터치 스크린에서도 작동합니다. BWP 2000 시리즈 터치 스크린에는 전체 화면 키보드만 있습니다. 키패드 옵션이 없습니다. 온스크린 키보드는 입력 필드를 덮지 않도록 화면 하단에서 화면 상단으로 이동할 수 있지만 많은 시나리오에서 숫자 키패드가
이 비디오는 저렴한 기성품 USB 카메라와 함께 Tormach ScanCAD 셰어웨어를 사용하여 공장을 2D 스캐닝 및 측정 시스템으로 전환하는 방법을 보여줍니다. CNC 스캐너 시작하기 이 비디오에서 CNC 기계공은 부품을 스캔한 다음 가공합니다.스캐닝 목적으로 사용할 수 있는 다양한 카메라에 대해 알려줍니다. Tormach CNC 스캐너 소개 Tormach CNC 스캐너는 PCNC를 고해상도 2D 광학 스캐너 및 리버스 엔지니어링 시스템으로 전환합니다. 이것은 도구 제작, 예술성, 수리 및 복원, 정밀 측정, 품질 보증