2 पॉइंट द्वारा GN⁺ 2025-08-20 | 1 टिप्पणियां | WhatsApp पर शेयर करें
  • लेखक ने harmonic wave gear (harmonic drive) और ESP32 microcontroller का उपयोग करके एक कस्टम telescope mount बनाया
  • मौजूदा commercial tracking mount बहुत महंगे थे, इसलिए DIY के रूप में खुद design और build करने का फैसला किया
  • PCB design और fabrication process, FreeCAD 3D modeling, component selection आदि सहित पूरी design process को विस्तार से समझाया गया है
  • कुल निर्माण लागत लगभग 1,700 euro रही, और एक यूनिट के हिसाब से commercial products के मुकाबले competitive लागत हासिल हुई
  • खुद बनाए गए mount को OnStepX firmware के साथ integrate करके वास्तविक astrophotography performance और सुधार के अनुभव साझा किए गए

एक नई शुरुआत

कुछ साल पहले, लेखक एक YouTube astrophotography channel से प्रेरित होकर astrophotography में रुचि लेने लगे। उन्होंने tripod पर कम exposure time के साथ सैकड़ों तस्वीरें लेकर Siril software से उन्हें stack करके Orion Nebula की तस्वीर लेने की कोशिश की। लेकिन जल्द ही tracking device की ज़रूरत महसूस हुई। Move Shoot Move tracker खरीदने के बाद भी target object ढूंढने, polar alignment करने और संतोषजनक नतीजे पाने में कठिनाई हुई, जिससे वे अधिक गंभीर telescope mount बनाने की दिशा में रुचि लेने लगे।

PCB निर्माण अनुभव का विस्तार

2024 में, उन्होंने संयोग से custom PCB design से जुड़े YouTube वीडियो देखे और पुराने ढीले-ढाले breadboard setup की जगह साफ-सुथरे और किफायती fabricated PCB इस्तेमाल करना सीखा। अपने पहले प्रोजेक्ट के रूप में उन्होंने ESP32, e-paper display और BME680 sensor का उपयोग करके एक smart thermostat बनाया। इसी अनुभव के आधार पर उन्होंने telescope mount में भी PCB design और fabrication तकनीक को सीधे लागू करने का निर्णय लिया।

गंभीर शोध और community resources का उपयोग

डिजाइन की मूल दिशा harmonic drive अपनाने पर केंद्रित थी। AliExpress और विभिन्न DIY communities (HEMY, HrEM, DHEM, DIY EQ Mount V2 आदि) के open source resources को देखते हुए उन्होंने component selection और mechanical structure पर काफी समय लगाया। Stepper/servo motor, FOC control, SimpleFOC जैसी विभिन्न open source implementations और community जानकारियों का भी अध्ययन किया।

डिजाइन निर्णय और संरचना

  • RA axis (equatorial axis): 42AIM15 servo motor + Type 17 harmonic drive (100:1 reduction)
  • DEC axis: MKS Servo042D stepper + Type 14 harmonic drive (100:1 reduction)
  • Mount और housing: Arca Swiss plate अपनाई गई, Move Shoot Move wedge के साथ compatible
  • Operating modes: GEM (equatorial) या ALTAZ (alt-az)
  • Microcontroller: ESP32-S3
  • Power: USB-C PD up to 24V/4A
  • Motor control: step/dir/en, ULN2003 + MODBUS, CANBUS
  • Expandability: बचे हुए GPIO pins को बाहर expose किया गया

हर motor के microstep और servo-control गुणों का उपयोग करके डिजाइन को सरल बनाया गया और tracking precision बढ़ाई गई। CANBUS के जरिए microstep को dynamically बदलकर high-speed slew और precise tracking के बीच संतुलन हासिल किया गया।

PCB design और समस्याओं पर काबू

  • KiCad में semi-circular PCB design की गई, ताकि वह case में बिल्कुल फिट बैठे
  • ESP32-S3 बिना antenna वाले module का उपयोग करके placement flexibility हासिल की गई और USB-C power input circuit (up to 24V) अपनाया गया
  • PicoPD open source circuit और AP33772 IC का उपयोग किया गया। JST PH series connector चुनकर compact और high-capacity connection हासिल किया गया
  • शुरुआती IC replacement process के दौरान I2C wiring mistake और malfunction का अनुभव हुआ, लेकिन दूसरे version में verification और कई test points जोड़कर समस्या हल की गई

OnStepX firmware integration

Open source OnStepX firmware लागू करके telescope control और WiFi communication support जोड़ा गया। शुरुआती slew operation (तेज़ position move) के दौरान ESP32 overload होने से stability issues आए, लेकिन slew speed कम करके और WiFi client mode में बदलकर समस्या सुलझाई गई। OnStepX के अनुरूप pin layout file और dynamic microstep control code जोड़कर लगभग बिना अतिरिक्त बदलाव के integration सफल रहा।

निर्माण और assembly process

PCB fabrication और CNC metal machining दोनों JLCPCB पर कराए गए। 3D print test पहले किए बिना केवल CAD drawings के आधार पर CNC order देना एक साहसिक फैसला था, और इससे parts की precision संतोषजनक मिली। हालांकि equatorial axis cap के design में गलती हुई, जिसे spacer से आसानी से ठीक कर लिया गया। सभी parts को M3/M4 tap machining और screw assembly से जोड़ा जा सकता था। हाथ से tap machining करके manufacturing cost भी कम की गई।

वास्तविक उपयोग का अनुभव

कई polar alignment, setup, और software (INDI, KStars, Ekos, PHD2) configuration की trial-and-error प्रक्रिया से लेखक ने व्यावहारिक अनुभव जुटाया। शुरुआती उपयोग में कई छोटी-बड़ी समस्याओं के कारण imaging अक्सर असफल हुई, लेकिन stabilization process के बाद 1–2 arcsecond precision तक हासिल की गई — 600mm lens के साथ 30-second exposure के लिए यह पर्याप्त रहा। Image stacking के लिए Siril इस्तेमाल किया गया, और multi-night stacking जैसे अतिरिक्त लक्ष्य भी आगे बढ़ाए जा रहे हैं।

निर्माण लागत और आर्थिकता

कुल लागत लगभग 1,700 euro रही (= tools, hardware, और preliminary research parts सहित)। एक यूनिट लागत के हिसाब से यह लगभग 800 euro बैठती है। Commercial GOTO mounts (1,200–4,000 euro) की तुलना में इसकी आर्थिकता बेहतर निकली, हालांकि लेखक के लिए खुद बनाना उससे भी अधिक महत्वपूर्ण अनुभव रहा।

प्रमुख items की अनुमानित लागत

  • Harmonic drives (2): 144 euro
  • MKS और servo motors (2 each): 73–216 euro
  • CNC parts: 215 euro
  • PCB, connectors, screws, tools आदि अन्य items

निष्कर्ष और अनुभव

लेखक इस बात पर जोर देते हैं कि खुद बनाने का अनुभव, समस्याओं को हल करने की प्रक्रिया, और design-fabrication-verification के पूरे cycle से मिलने वाली उपलब्धि commercial product खरीदने से कहीं अधिक सार्थक है। Version 1 PCB की असफलता से उन्होंने सावधानीपूर्वक verification का महत्व सीखा। FreeCAD, KiCad, open source के उपयोग, और hardware development की पूरी प्रक्रिया से कई महत्वपूर्ण सबक मिले। OnStepX firmware और community resources की बदौलत यह साबित हुआ कि DIY telescope mount आम लोगों के लिए भी संभव प्रोजेक्ट है।

सितारों को track करने वाला अपना mount खुद बनाना और उसे पूरी तरह समझना — यही उपलब्धि वास्तव में सबसे मूल्यवान है

1 टिप्पणियां

 
GN⁺ 2025-08-20
Hacker News राय
  • यह समझाया गया है कि USB-C पावर सप्लाई से निकलने वाली केबल एक inductor की तरह काम करती है, यानी LC फ़िल्टर संरचना बनाकर low-pass filter की तरह व्यवहार करती है, इसलिए onboard capacitor की ज़रूरत होती है। जब motor अचानक बहुत ज़्यादा current खींचता है, तो inductor के गुण के कारण current तुरंत नहीं बह पाता, इसलिए capacitor उसकी जगह current देता है, और उसके बाद inductor धीरे-धीरे current पहुँचाता है।

  • यह सच में बहुत शानदार प्रोजेक्ट और बढ़िया व्याख्या है, और timing भी कमाल की है। मैं 13 साल की उम्र से amateur astronomy में डूबा हुआ हूँ, कई telescopes रखे हैं, और परिवार के साथ रात का आसमान देखते हुए बहुत समय बिताया है। हाल ही में मैंने 10-inch SCT और 4-inch Newtonian फिर निकाले और अपने 7 साल के बेटे को चाँद और शनि दिखाया। यह और भी अर्थपूर्ण था क्योंकि मेरे माता-पिता भी साथ देख पाए। 10-inch SCT एक पुराने fork mount पर लगा है जिसमें GOTO फ़ीचर नहीं है। मैंने GOTO के फ़ायदे भी देखे हैं, लेकिन खुद star-hopping करने के मज़े की वजह से अभी तक खरीद नहीं पाया। हाँ, एक dedicated cooling camera ZWO 585MC खरीद लिया है। दूसरी तरफ, stars ढूँढ़ते-ढूँढ़ते मैंने बहुत समय गंवाया भी है। Telrad ही काफ़ी नहीं लगा, इसलिए 3D printer और electronics की जानकारी से अपना third-party mount बनाने का भी सोचा। motors को NEMA 17 stepper में बदलने पर भी विचार किया। इसी दौरान मुझे PiFinder प्रोजेक्ट मिला। यह automation और manual guide के बीच एकदम सही संतुलन लगता है https://www.pifinder.io/, और 3D printing व PCB manufacturing तकनीक की प्रगति देखकर भरोसा होता है कि जल्द ही बहुत-सी समस्याएँ हल की जा सकती हैं।

    • GOTO मज़ेदार नहीं है, यह राय पढ़कर फिर महसूस हुआ कि लोगों की पसंद कितनी अलग होती है। मुझे तो उल्टा objects ढूँढ़ने की प्रक्रिया सबसे कम पसंद है, इसलिए goto mount के लिए मैं आभारी हूँ।
    • अगर आप ZWO camera को Kstars/EKOS से जोड़ें, तो software plate solving का उपयोग करके ठीक-ठीक पता लगा सकता है कि telescope कहाँ देख रहा है, और उसी हिसाब से adjustment किया जा सकता है।
  • इस शानदार प्रोजेक्ट में circuit traces के बारे में एक बात कहना चाहूँगा। 24V support के लिए traces को बहुत चौड़ा रखा गया बताया गया है, लेकिन वास्तव में voltage जितना ऊँचा होगा, current उतना कम होगा, इसलिए traces उतने चौड़े रखने की ज़रूरत नहीं होती। Trace width current के आधार पर तय होती है, जबकि traces के बीच spacing वह हिस्सा है जहाँ voltage के अनुसार ध्यान देना चाहिए।

  • ब्लॉग से उद्धरण: "जब telescope को target की ओर move करने के लिए motors को भेजे जाने वाले pulses की संख्या बढ़ जाती है, तो छोटे ESP32 पर overload हो जाता है।" मैं भी high speed पर stepper motors को सटीकता से नियंत्रित करने का काम करता हूँ, और थोड़ा-सा pulse miss या glitch भी स्वीकार्य नहीं है। MCU core की अपनी सीमाएँ हैं, इसलिए मैं timer + DMA से control करता हूँ। आख़िर में मैंने STM32G4 MCU के ACT (Advanced Control Timer) फ़ीचर का उपयोग किया। सिर्फ DMA से arbitrary waveform generation आसान हो जाता है, इसलिए चाहे core overload हो या sleep mode में हो, timer प्रभावित नहीं होता। आजकल RP2350 के PIO पर भी विचार कर रहा हूँ। ESP32 में MCPWM है, लेकिन जटिल acceleration/deceleration profiles को 100% core-free तरीके से लागू करने के लिए timer को cascade करना पड़ता है या interrupts इस्तेमाल करने पड़ते हैं, और फिर दोबारा core पर निर्भरता आ जाती है, जिससे glitch की संभावना रहती है। ST का ACT हर motor के लिए independent timer देता है, इसलिए implementation सरल है; बस datasheet ध्यान से पढ़नी होती है। Dedicated driver ICs (जैसे Trimanic) भी एक तरीका हैं, लेकिन software complexity मेरे तरीके से भी ज़्यादा हो जाती है।

    • मेरी जानकारी के अनुसार OnStepX pulse-based है। DMA इस्तेमाल करने वाला तरीका मैंने अभी तक नहीं देखा। मुझे लगता है कि दोनों तरफ CANBUS के ज़रिए pulse की बजाय position-command mode में चलाना संभव होना चाहिए। OnStepX के code में भी मैंने यह संभावना देखी, लेकिन pulse mode से शुरुआत करना बहुत आसान था, इसलिए वही चुना।
    • rp2040 पर stepper control करते समय मैंने PIO के बारे में भी सोचा था, लेकिन 5-bit counter और 32-instruction सीमा के कारण उसका उपयोग कठिन लगा। उसकी जगह मैंने दूसरे core को motion control के लिए समर्पित किया, और bit-bang तरीके से step/dir signals निकाले। एक single-axis trapezoidal profile के लिए यह काफ़ी उपयोगी था।
    • अगर आपको जानना है कि MCU से stepper control कितनी दूर तक ले जाया जा सकता है, तो Merlin 3D printer firmware देखने की सलाह दूँगा। छोटे 8-bit AVR MCU पर भी यह delta printer के लिए जटिल गणनाएँ कर लेता है।
    • मेरी जानकारी में ESP32 में RMT भी है। क्या उस तरीके पर विचार नहीं किया गया था?
  • मैं 3 साल से freeCAD इस्तेमाल कर रहा हूँ। इस प्रोजेक्ट में जो नतीजा निकला है, उसे देखकर सच में प्रभावित हुआ हूँ। मुझे freeCAD पसंद है, लेकिन इतने अड़ियल, असुविधाजनक और चिढ़ पैदा करने वाले अनुभव भी कम ही किसी चीज़ ने दिए हैं।

    • FreeCAD का आभारी हूँ, लेकिन जैसे-जैसे project complexity बढ़ती है, random crashes की वजह से बहुत जूझना पड़ता है। फिर भी, ज़्यादातर ज़रूरी चीज़ें अगर तरीका पता हो तो FreeCAD में की जा सकती हैं। शायद दूसरे CAD tools कभी इस्तेमाल न करने की वजह से ही मैं freeCAD पर टिक गया।
    • मैं 7 साल से FreeCAD में hobby modeling कर रहा हूँ, लेकिन पहली बार इस्तेमाल होने वाले features में user experience आज भी परेशान करने वाला है। मैं FE developer हूँ, इसलिए QA standards जानता हूँ, और FreeCAD में बहुत-सा UX उन मानकों से नीचे लगता है। Overconstraint errors और warnings में अंतर समझने के लिए forum खंगाला, तो performance के नाम पर उस design choice का बचाव करने वाली पोस्टें ही ज़्यादा मिलीं। Power users का gatekeeping वाला माहौल ही असली समस्या है। अच्छे UX expert और community manager की बहुत ज़रूरत है।
    • मैं OnShape और FreeCAD दोनों बारी-बारी से इस्तेमाल करता हूँ, और OnShape की polished finish देखकर प्रभावित होता हूँ। लेकिन खरीदे गए models की वजह से मैं उन्हें OnShape के free tier में नहीं डाल सकता। FreeCAD में काम हो जाता है, मगर अगर सोचो कि “यह एक घंटे में हो जाएगा”, तो अक्सर रात भर लग जाती है।
    • FreeCAD का होना ही शानदार है, और आगे इसके और mature होने की उम्मीद है। फिर भी, अगर जल्दी result चाहिए, तो Autodesk Fusion free tier की सिफ़ारिश करूँगा। जो लोग सिद्धांततः सिर्फ OSS इस्तेमाल करते हैं, उनके लिए यह ठीक न हो, लेकिन hobby use के लिए इसमें practically कोई बड़ी पाबंदी नहीं है और quality अच्छी है। सिर्फ OSS न होने की वजह से किसी tool को पूरी तरह नकार देना ठीक नहीं लगता; काश software चुनने की गुंजाइश features के आधार पर और खुली हो।
    • ChatGPT और Claude ऐसे कामों में बहुत मददगार हैं। अगर software documentation ठीक-ठाक है, तो AI workflow के steps काफ़ी दोस्ताना तरीके से समझा देता है। पूरी तरह specialized या reference-material कम वाले क्षेत्रों में इसकी सीमाएँ हैं, लेकिन आँख बंद करके इधर-उधर click करने या YouTube videos तेज़ी से देखने से यह कहीं तेज़ है। आप इसे बुनियादी concepts बनाने के लिए study guide तैयार करने को भी कह सकते हैं। हालाँकि, AI hallucination या गलती कर सकता है, इसलिए links/references ज़रूर माँगें।
  • Telescope mount के साथ सीधे precise measurement करने, जैसे अपनी ताकत पर planetary astrometry करने, वाले प्रोजेक्ट्स में मेरी बहुत रुचि है। सिर्फ अपने measurement से किसी ग्रह की orbit निकालने की कोशिश करना वैसा लगता है जैसे Kepler जैसे पुराने खगोलविदों के रास्ते पर फिर चलना।

    • यह सच में बहुत रोचक विषय है। सिर्फ सुंदर तस्वीरों के शौक से आगे बढ़कर, मैं ऐसी system के बारे में सोचता हूँ जहाँ amateur observation data को research में इस्तेमाल किया जा सके। अगर single-frame raw images और metadata (time, coordinates, calibration frames आदि) साझा किए जाएँ, तो सामूहिक रूप से scientific research या और सुंदर images दोनों बनाए जा सकते हैं। Vera C. Rubin Observatory कुछ ही दिनों में पूरे दक्षिणी गोलार्ध की imaging कर सकता है। अगर ऐसा software आगे चलकर global crowdsourced astronomy array बन जाए, तो यह अद्भुत होगा।
    • वास्तव में ग्रह की सटीक position जानने के लिए telescope mount की position correction से ज़्यादा सटीक तरीका यह है कि ग्रह को center में रखकर ली गई image को आसपास के तारों की fixed coordinates से compare किया जाए और उससे उसकी स्थिति निकाली जाए। Mount को खुद पूरी तरह calibrate करना लगभग असंभव है। Relative star-coordinate तरीका बेहद सटीक है।
    • एक और मज़ेदार प्रोजेक्ट exoplanet transit light curve मापना है। पास के exoplanets को सिर्फ photography lens से भी backyard से observe किया जा सकता है। उदाहरण के लिए ASI178MM-c और Canon FD 300mm के साथ एक amateur observation case यहाँ साझा किया गया है https://astropolis.pl/topic/60163-wasp-10-b-w-pegazie-1270-mag-00340-mag/
    • भले ही यह पूरी तरह first-principles वाला तरीका न हो, लेकिन कुछ लोग Seestar S50 roboscope और diffraction grating का उपयोग करके तारों के emission spectrum भी माप रहे हैं।
    • जानकारी के लिए, Kepler ने telescope के बिना Tycho के naked-eye observation data से काम किया था।
  • यह सच में शानदार प्रोजेक्ट है। PCB डिज़ाइन करते समय शायद सही capacitors, resistors वगैरह नहीं लगाए गए, और microcontroller stability थोड़ी कम लगती है। मैं जानना चाहता हूँ कि लोग ज़रूरी parts, जैसे decoupling capacitors, कैसे तय करते हैं। क्या datasheet पढ़कर उसमें जो कहा है वह सब वैसा ही लागू कर देना चाहिए?

    • Datasheet देखना ज़रूरी है। ज़्यादातर में आवश्यक circuit examples होते हैं, जिन्हें ज़रूर देखना चाहिए। इसके अलावा अच्छी आदतें हैं: chip pins के पास decoupling capacitors लगाना, ground को stable रखना, और reference layout का पालन करना। अनुभवी engineers किस तरह निर्णय लेते हैं, यह समझाने वाले resources (उदा. https://www.youtube.com/watch?v=aVUqaB0IMh4) भी बहुत मदद करते हैं।
    • लगभग हर component datasheet में minimal circuit और reference design होता है। Ground plane का उपयोग, signal line की लंबाई जैसी बातें अक्सर अलग application notes में समझाई जाती हैं।
    • Microcontroller circuit design में, जिन development boards के circuits public हों, उन्हें reference बनाना अच्छी शुरुआत देता है।
    • Datasheet देखने के साथ-साथ, हर power pin पर decoupling capacitor जितना संभव हो उतना पास लगाना और PCB की एक side को ground plane रखना ज़्यादातर समस्याएँ हल कर देता है।
  • CNC metal parts मंगवाकर बनवाने वाली बात विशेष रूप से प्रभावशाली लगी। मैं भी CAD design में beginner हूँ और सीखना चाहता हूँ।

    • स्थानीय makerspace में सदस्यता लेकर machine shop का उपयोग किया। CNC machine के लिए training और certification ली, और फिल्म-shooting equipment के लिए एक simple metal plate CAD में design की। एक आसान G-code generator था, और simulator में collision भी check किया था। लेकिन असली fabrication के समय लगभग हर बार किसी ने head खराब कर दिया होता था, इसलिए मशीन बंद मिलती थी। आख़िर में मैंने वह चीज़ हाथ से बनाई, इसलिए कुछ dimensions बिल्कुल perfect नहीं निकले। अगर मुझे पहले से CNC service के बारे में पता होता, तो शायद सीधे CNC से बनवाता।
    • असल में यह काफ़ी सरल है। बस step file upload कीजिए, और तुरंत quote व manufacturability check मिल जाता है https://jlccnc.com/cnc-machining-quote
  • यह सच में शानदार प्रोजेक्ट है। मैं जानना चाहता हूँ कि PCB fabrication cost मुख्यतः assembly की वजह से थी या नहीं। JLCPCB में 2-layer, 100mm से कम, HASL finish जैसी basic options के साथ board तो सस्ता होता है। क्या USB connector plate slot जैसी चीज़ extra cost बढ़ाती है? एक बार में कितने assembled boards मंगवाए गए? Standard/extended parts library का अनुपात कैसा था? अगर सिर्फ connectors अलग से हाथ से solder किए जाते, तो कितना फ़र्क पड़ता? क्या extended library का एक भी part होने पर सभी parts के लिए individual pick-and-place cost बढ़ जाती है, और क्या component types कम रखना ही cost बचत का मुख्य तरीका है?

    • हाँ, लागत का मुख्य कारण assembly ही था। Boards JLCPCB के 2-layer basic options पर थे, सिर्फ color को black करने से थोड़ा खर्च बढ़ा। मैंने पाँच-पाँच की quantity में order किया, क्योंकि वही minimum quantity थी। जहाँ तक हो सका standard library से match करने की कोशिश की, लेकिन passive components के अलावा इसकी सीमा है। Through-hole parts अगर मैं खुद solder करता, तो cost difference कितना होता यह नहीं जानता, लेकिन इतना भी नहीं कि बहुत फ़र्क पड़े। Component types कम रखना सही रणनीति है। उदाहरण के लिए, अगर 4k और 6k resistors चाहिए हों, तो 2k वाले पाँच resistors मिलाकर काम निकालना ज़्यादा फ़ायदेमंद हो सकता है।
  • बेहद प्रभावशाली प्रोजेक्ट है। मैं भी अपने scope के लिए बड़ा harmonic-drive mount खरीदना चाहता था, लेकिन उसकी कीमत बहुत बड़ी बाधा है। EKOS/Kstars/INDI tools इस्तेमाल करते हुए भी काफ़ी trial and error करना पड़ा। Python में indi devices को control करने के लिए मेरा लिखा code यहाँ है https://github.com/dahlend/contindi

    • मैं जानना चाहता हूँ कि आपने यह code किस motivation से लिखा। EKOS में खुद scheduling features अच्छे लगते हैं। मैं भी MeLE 4C mini computer पर INDI server चला रहा था और एक terminal interface (TUI) बनाया था https://www.svendewaerhert.com/content/blog/telescope-mount/inditui.png, लेकिन GNOME remote desktop की reliability समस्याओं के कारण मैं headless/remote INDI server पर चला गया। जल्दी ही TUI code भी साफ़-सुथरा करके Github पर डालने वाला हूँ।