LOVE TO DO
Integration
DEVELOPMENT
Project
EDUCATION
Major in Power machine engineering
Master. Major in Electric control system
EXPERIENCE
Corning Display
Global team management and Asia team building up
Force instrument
Startup company from Academia Sinica.
Nano spec measure instruments design from zero, including AFM/SPM, profilometer, Lock-in amplifier, nano XY stage, and AOI for PSS(PATTERN SAPPHIRE SUBSTRATE).
FOXCONN Inc.
Robot cell design for auto defect checking and packing
- Family Income Statement Sankey Diagram
- Cash flow game
- Desktop IP Camera Simulator
- Boost Your Project Management Efficiency with ChatGPT: Tips and Tools
- Profilemetor
- AOI - Auto optical inspection
- Paper- Advanced servo control
- AFM - Atom Force Microscope
- Strengths
在看美國一些大公司的income statement chart,
覺得使用Sankey Diagram 來呈現現金流的方式可以很清楚的看到錢流到那去了,
於是便寫一個小工具,可以把家庭收支以Sankey Diagram來呈現。
把家庭收支填入後按下方的綠色按鈕便可以出現像是下面一樣的家庭收支圖
Family Income Statement Sankey Diagram
Income Sources
Monthly Expenses
Essential Expenses
Discretionary Expenses
Savings & Investment
試著用html寫一個關於現金流的小遊戲。
建立一個自動賺錢的系統來達到財務自由應該是很多人的夢想。
一開始沒錢的時候其實會發現怎麼投資也賺不了多少錢。
應該把錢花在投資自己,提高自己的財商和工作收入。
漸漸有錢了就要開始建立自己的被動收入系統,祝自己也祝大家能一步步達到財務自由!
Cash Flow Game
How to Play
Manage your finances by making decisions that affect your income from work and assets, and your expenses. Your goal is to achieve financial independence: when your income from assets exceeds both your income from work and your expenses.
Be cautious! Random events may increase your expenses. If your cash drops below 0, it's game over!
Financial Summary
Category | Amount |
---|---|
Cash | $10,000 |
Income (Work) | $3,000 |
Income (Assets) | $0 |
Expenses | $2,500 |
Assets Value | $0 |
Net Worth | $10,000 |
Make a Decision
最近執行專案時發現現場人員會使用Web camera 來monitor 電腦螢幕,因為Web camera 有連到Server, 可以遠端監控,且有記錄和回放功能。當下覺得實在太好笑了,為何不直接把電腦畫面直接傳到Web Camera server 就好了。
了解後才發現螢幕監控記錄系統要額外花錢,現場人員等於是在不增加太多成本的方式來延用舊有系統。
個人覺得這件事沒那麼困難,於是便在下班時間寫了一個可在背景執行的程式,可以把當下電腦畫面模擬成IP camera的串流訊號。如此一來,只要把這個IP camera 加入Web camera server,就可以把電腦畫面送到Server了! 下面是 Python code 提供參考:
import cv2
import numpy as np
import pyautogui
import socket
import time
import sys
import traceback
import logging
from threading import Thread
logging.basicConfig(filename='ip_camera_simulator.log', level=logging.DEBUG,
format='%(asctime)s - %(levelname)s - %(message)s')
def handle_client(client_socket):
try:
logging.info("New client connected")
client_socket.sendall(b"HTTP/1.1 200 OK\r\n")
client_socket.sendall(b"Content-Type: multipart/x-mixed-replace; boundary=frame\r\n")
client_socket.sendall(b"\r\n")
while True:
try:
screenshot = pyautogui.screenshot()
frame = cv2.cvtColor(np.array(screenshot), cv2.COLOR_RGB2BGR)
_, jpeg = cv2.imencode('.jpg', frame)
client_socket.sendall(b"--frame\r\n")
client_socket.sendall(b"Content-Type: image/jpeg\r\n")
client_socket.sendall(f"Content-Length: {len(jpeg)}\r\n".encode())
client_socket.sendall(b"\r\n")
client_socket.sendall(jpeg.tobytes())
client_socket.sendall(b"\r\n")
logging.debug("Frame sent")
time.sleep(0.1)
except (ConnectionResetError, BrokenPipeError) as e:
logging.info(f"Client disconnected: {str(e)}")
break
except Exception as e:
logging.error(f"Error in frame capture/send: {str(e)}")
logging.error(traceback.format_exc())
break
except Exception as e:
logging.error(f"Error handling client: {str(e)}")
logging.error(traceback.format_exc())
finally:
client_socket.close()
def run_server(port=8000):
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
server_socket.bind(('', port))
server_socket.listen(5)
logging.info(f"Server running on port {port}")
print(f"Server running on port {port}")
while True:
try:
client_sock, address = server_socket.accept()
logging.info(f"Accepted connection from {address}")
client_thread = Thread(target=handle_client, args=(client_sock,))
client_thread.start()
except Exception as e:
logging.error(f"Error accepting connection: {str(e)}")
logging.error(traceback.format_exc())
if __name__ == '__main__':
try:
logging.info("Starting application")
run_server()
except Exception as e:
logging.error(f"Unhandled exception: {str(e)}")
logging.error(traceback.format_exc())
print(f"An error occurred: {str(e)}")
input("Press Enter to exit...")
"""
Packaging Instructions:
1. Save this script as 'desktop_ip_camera.py'
2. Install PyInstaller:
pip install pyinstaller
3. Create a spec file:
pyi-makespec --onefile desktop_ip_camera.py
4. Edit the generated desktop_ip_camera.spec file:
- Add these imports at the top:
import sys
import os
- In the Analysis section, add:
pathex=[os.path.dirname(sys.executable)],
- In the EXE section, ensure:
console=True,
5. Build using the spec file:
pyinstaller --clean desktop_ip_camera.spec
6. Look for the executable in the 'dist' folder.
Running and Troubleshooting:
1. Run the executable from command prompt as administrator.
2. Check the generated 'ip_camera_simulator.log' file for error messages.
3. Try accessing http://localhost:8000 in your web browser.
4. If issues persist, check your firewall and antivirus settings.
"""
Here are some specific ways that you can use ChatGPT to improve your work efficiency as a project manager:
- Use ChatGPT for quick research on specific project-related topics.
- Use ChatGPT to automate responses to frequently asked questions or send reminders to team members.
- Use ChatGPT to schedule meetings and set reminders for deadlines.
- Use ChatGPT to manage tasks, track progress and stay organized.
By incorporating ChatGPT into your workflow, you can save time and be more productive in your role as a project manager.
One tool you can use to automate responses and send reminders to team members is a chatbot platform such as ManyChat, Chatfuel, or Tars. These platforms allow you to create chatbots that can be integrated with popular messaging apps such as Facebook Messenger, WhatsApp, and Slack.
With these chatbot platforms, you can create automated responses to common questions, provide updates on project status, and send reminders to team members about upcoming deadlines or meetings. You can also use these platforms to gather feedback from team members and provide them with resources and information they need to complete their tasks.
These chatbot platforms offer a range of features and integrations that can help you improve your communication and collaboration with your team, ultimately leading to increased work efficiency as a project manager.
Design for different sample request. Resolution can achieve Nano meter. 100% design including HW and SW in Force inc.
LED PSS defect inspection in Force instrument
Advanced control theory development and paper published in IET control theory and application
AFM(atom force microscope). Capable to measure surface profile in Nano meter (0.000000001mm)
An Atomic Force Microscope (AFM) is a complex piece of equipment that consists of several key components:
- Probe: This is the most crucial part of an AFM. The probe consists of a very sharp tip (often only a few atoms wide) that is attached to a cantilever. The probe is used to scan the surface of the sample.
- Cantilever: The cantilever is a thin beam attached at one end to the probe. When the probe scans the surface of the sample, forces between the atoms cause the cantilever to bend or deflect.
- Laser: A laser beam is directed onto the back of the cantilever. As the cantilever bends or deflects due to the atomic forces, the direction of the reflected laser beam changes.
- Photodetector: This component detects the changes in the direction of the reflected laser beam. The photodetector is divided into four quadrants, and the difference in light intensity between these quadrants allows the deflection of the cantilever to be measured.
- XYZ Piezoelectric Scanner: This component moves the sample (or sometimes the probe) in the X, Y, and Z directions with extreme precision, allowing the probe to scan the surface of the sample.
- Feedback Loop: This electronic system controls the height of the scanner (or the probe) to maintain constant force between the probe and the sample, or constant deflection of the cantilever.
- Controller: This is the 'brain' of the AFM. It processes the signals from the photodetector and controls the XYZ scanner via the feedback loop.
- Sample Stage: This is where the sample to be examined is placed. It can often be moved in three dimensions to allow different areas of the sample to be examined.
- Vibration Isolation Table: Since AFM measurements are extremely sensitive, the whole system is usually placed on a special table to isolate it from external vibrations.
- Computer System: A computer is used to control the operation of the AFM, collect the data from the photodetector, and process this data to produce the final image.
In the heart of my professional journey lies a project that not only honed my technical skills but also refined my abilities in various other domains. This project was undertaken during my tenure at [Company Name], where I was tasked with creating an Atomic Force Microscope (AFM) system from scratch. This endeavor was a unique blend of hardware design, software engineering, system integration, FPGA firmware development, and even salesmanship.
The project began with hardware design, where I was responsible for conceptualizing and creating the physical components of the AFM. This process demanded a deep understanding of nanotechnology and the principles behind Atomic Force Microscopy. Each component, from the probe and cantilever to the laser and photodetector, was meticulously designed to ensure optimal performance and precision.
Simultaneously, I was immersed in the world of software design. The AFM required a robust software system to control its operations, collect data, and process this data to produce the final image. This task required a profound knowledge of programming languages and software engineering principles.
The next stage was system integration, where the hardware and software components were brought together to form a cohesive unit. This phase was crucial as it ensured the seamless interaction between all parts of the AFM system.
One of the most challenging aspects of the project was developing the FPGA firmware. This task required a deep understanding of digital circuit design and programming. The FPGA firmware was designed to control the AFM's operations, ensuring that it functioned efficiently and accurately.
The project also provided me with an opportunity to step into the shoes of a salesperson. I learned how to communicate with potential customers, understand their needs, and present our product in a way that addressed those needs. This process not only improved my communication skills but also provided valuable insights into the market dynamics and customer behavior.
The journey of building an AFM system from zero was an enriching experience that broadened my technical skills and business acumen. It was a testament to the fact that the creation of a product doesn't end with its physical and digital design; it extends to understanding the market, the customers, and the art of selling. This project was not just about building an AFM; it was about creating a comprehensive solution that meets the needs of the scientific community.
More introduction:https://en.wikipedia.org/wiki/Atomic_force_microscop
System integration on measurement and control system with production
Rich experience on system integration including software, mechanical, date/signal communication, and how to use it on process.
Capable to build up measurement and control system from 0 - ex: building up process tools from concept to migration and combine with control system including all hand-over document and coordinate with process team to provide process guide line.
Team builder. Deputy resource and vendor resource build up for schedule flexibility.
Organization capability to group up team from different function to meet project objective
Group up and scope design change into cross-functional team
Willing to train member to be project leader by guiding them to work on trial & migration project to build up their capability and enable resource's flexibility
Deputy team build up to meet each project schedule when conflict.
Technology road map build up and strategy on technical migration
Build up process measurement and control technical road map
Capable to identify gap in process issue and deliver technology to fix the gap
- Key measurement technology migration for process auto control to improve OEE in display
--Process monitor tool for quality alarm.
--Edge inspection build up and future process control
--Defect detection migration for lose prevention. - Process understanding and customer-based thinking
Well understanding on process through multiple join ventures project.
Capable to design measurement and control system that meet process need.
in 2020, 3 process control by using gauges has been trial or migrate successfully through coordinating with process
SKILLS