Leased land instead of purchase, in-house cassette duplication, CD-R duplication with CD replication shown as a separate investor decision, Ploy Printing as packaging partner and intended co-investor, and a dedicated section on traceability, metrology, QC and efficiency.
427 lines
38 KiB
Python
427 lines
38 KiB
Python
"""Part B: what makes it top-notch (traceability, metrology, QC, efficiency); site and building; BOI."""
|
||
from plan_lib import H1, H2, H3, P, B, N, T, KV, IMG, CALL, PB
|
||
|
||
|
||
def blocks():
|
||
return [
|
||
# ------------------------------------------------- 5 top-notch
|
||
H1("5. What makes it top-notch: traceability, metrology, QC and efficiency"),
|
||
P("A pressing plant makes records. A top-notch plant knows, for every record it has ever made, "
|
||
"exactly how it was made, can prove it to the customer, and wastes as little energy, water and "
|
||
"material as the physics allows. This section is the heart of the plan, because these four "
|
||
"capabilities are what a regional customer cannot buy today and what justifies export-grade "
|
||
"pricing. None of it is exotic: the instruments exist, the data interfaces exist, and the "
|
||
"engineering is well understood. What is unusual is putting all of it in one plant from the "
|
||
"start rather than bolting it on later."),
|
||
|
||
H2("5.1 Traceability: every record knows its history"),
|
||
P("Every step of production is logged continuously, so that every record is traceable end to end "
|
||
"for the customer. This is a fixed requirement, and it is the core specification for the factory "
|
||
"software the project will build. The natural identity of a record is **stamper ID + press ID + "
|
||
"cycle timestamp + side**, and everything else hangs off that key."),
|
||
T(["Stage", "What is recorded"], [
|
||
["Audio intake", "File received, checksums, versions, who handled it, approval trail"],
|
||
["Mastering", "Session log, engineer, settings, customer approvals"],
|
||
["Cutting", "Lacquer IDs, lathe parameters, stylus used, inspection result, dead-wax matrix "
|
||
"scribe"],
|
||
["Galvanics", "Silvering and plating batch IDs, bath chemistry logs, father/mother/stamper "
|
||
"genealogy (which stamper came from which mother from which father), or the "
|
||
"external supplier and batch if bridged"],
|
||
["Pressing", "Press ID, operator, shift, mould and stamper IDs, per-cycle temperatures, "
|
||
"pressures and cycle time, PVC compound lot and virgin/regrind mix, label lot"],
|
||
["Quality control", "Test-pressing approvals, inspection results, reject counts and reasons"],
|
||
["Finishing and packaging", "Trimming, sleeving, carton lot, packaging partner batch"],
|
||
["Fulfilment", "Warehouse location, shipment or dropshipping consignment, carrier tracking per "
|
||
"end customer"],
|
||
], widths_mm=[38, 132]),
|
||
P("**Principles.** Log at the source: machine data comes from the machine (press PLCs, plating "
|
||
"rectifiers, the AD12's remote monitoring), never from manual transcription; manual steps get a "
|
||
"simple operator check-in. Batch and genealogy first: every physical artefact (lacquer, father, "
|
||
"mother, stamper, press run, box) gets an ID and knows its parents. Environment attached: the "
|
||
"plant's temperature, humidity and particulate logs sit on the same timeline, so any production "
|
||
"window can be correlated with plant conditions. Immutable and retained: logs are append-only "
|
||
"and kept for the life of the customer relationship; stamper genealogy for as long as the archive "
|
||
"holds the metal."),
|
||
P("**Identity travels with the product.** The matrix code scribed into the lacquer's dead wax "
|
||
"propagates through father, mother and stamper to every pressed record. A small angular fiducial "
|
||
"scribed beside it makes each part's rotation camera-readable at any stage, and lets the packing "
|
||
"station read the code on a finished record and match it to the jacket barcode. Nickel parts "
|
||
"additionally get a laser-marked serial on the back, as the optical-disc industry marked its "
|
||
"stampers; lacquers are never lasered (nitrocellulose is flammable) and records are never lasered "
|
||
"(burning PVC releases hydrochloric acid)."),
|
||
CALL("Why this is a product feature, not an internal file", [
|
||
"**Customers see their order.** A per-order portal or report covers the full chain above, "
|
||
"without exposing other customers' data. Labels ask about pre-release security and provenance "
|
||
"before they send masters; this answers both.",
|
||
"**A complaint resolves backwards.** One noisy record resolves to its stamper, press, cycle, "
|
||
"operator, compound lot and packaging lot, and from the stamper back through mother and father "
|
||
"to the lacquer and the approved master. Root cause takes minutes, not a week of guessing.",
|
||
"**Stampers retire on data.** Audio scores trending down against a stamper's play count become "
|
||
"an automatic retirement signal instead of a customer complaint.",
|
||
"**Machine data access is a purchasing condition.** Newbilt, Pheenix Alpha and Digital Matrix "
|
||
"are asked which PLC interfaces they expose before a purchase order is signed. That question "
|
||
"is free now and expensive later.",
|
||
]),
|
||
P("**Cost and build.** The traceability and factory software is estimated at USD 60k to 170k and "
|
||
"is a development project, not a purchase; no vendor sells a turnkey version. Version 1 (intake, "
|
||
"batch genealogy, press telemetry capture) is built during commissioning so the first test "
|
||
"pressings are already in the system. The project repository is the eventual home of this "
|
||
"software. Open design work: the data model across all stages, retention and PDPA handling for "
|
||
"operator-linked records, and whether test-pressing approval workflows live in the same system "
|
||
"from day one."),
|
||
|
||
H2("5.2 Metrology: measuring the metal before it presses a single record"),
|
||
P("A stamper is a 0.2 to 0.3 mm nickel disc carrying a spiral ridge 40 to 80 microns wide and about "
|
||
"28 microns high, 200 to 350 turns per inch. Industry practice, even at respected stamper houses, "
|
||
"is to check its thickness with a hand micrometer at ten points on sacrificial blanks, with "
|
||
"nothing logged. A top-notch plant measures the metal without contact, per serial, and makes an "
|
||
"accept or reject decision on data before the next plating generation or the press mounting."),
|
||
T(["Instrument", "What it measures", "How it is used"], [
|
||
["3D laser confocal microscope (Keyence VK-X class)", "Groove cross-section, wall roughness, "
|
||
"micro-defects; 20 nm vertical, ~120 nm lateral resolution, non-contact", "Sampled radial "
|
||
"zones (lead-in, outer, mid, inner) on fathers, mothers and stampers; scanning the full spiral "
|
||
"is not feasible and not needed. The optical-disc industry verified its nickel stampers with "
|
||
"this instrument class, so the technique transfers directly"],
|
||
["Wide-area optical profiler (Keyence VR-6000 class)", "Form, flatness, gross defects; "
|
||
"0.1 micron height resolution, ~1 s per field, HDR mode for mirror-bright nickel",
|
||
"Fast whole-part mapping of every part"],
|
||
["XRF thickness gauge (Fischer or Bowman class)", "Nickel deposit thickness, non-destructive",
|
||
"Per serial, read on the outer land zones; replaces the ten-point micrometer. Target total "
|
||
"thickness variation 10 to 20 microns"],
|
||
["Stylus profilometer", "Traceable reference", "Calibration of the optical instruments"],
|
||
["Inline machine vision", "Cosmetic screening", "100% of parts, fast"],
|
||
], widths_mm=[42, 58, 70], font_pt=8.5),
|
||
P("Integration is real but not turnkey: the instruments export data and support scripting, and "
|
||
"the inline sensors speak standard industrial protocols, but there is no off-the-shelf connector "
|
||
"to a factory database. A light middleware service stamps each measurement with the part serial "
|
||
"and batch ID and writes it to the genealogy record. Budget for the full stack (metrology plus "
|
||
"the record-QC layers below, plus the audio station) is USD 350k to 810k, phaseable; a basic "
|
||
"tier (microscope, benchtop PVC lab, sampled listening) runs from launch."),
|
||
|
||
H2("5.3 Quality control: three layers for every record, one gate for every material"),
|
||
P("Full automated audio checking of every record is physically impossible: a 12-inch record plays "
|
||
"for about 40 minutes and a press makes a new one every 25 to 30 seconds, so one press outruns "
|
||
"roughly 80 to 95 full-time listening stations. No playback-QC robot exists anywhere. The credible "
|
||
"maximum-automation design is layered, and it should be described to customers exactly as it is: "
|
||
"100% optical plus per-cycle telemetry plus sampled audio, with human ears kept in the loop for "
|
||
"test-pressing approval."),
|
||
T(["Layer", "What", "Catches", "Status"], [
|
||
["1. 100% inline optical inspection", "Darkfield line-scan cameras at the press unloader "
|
||
"inspect every record at line speed", "Non-fill (dull patches where PVC did not fill the "
|
||
"stamper), stitching and flow lines, warp, off-centre spindle holes, surface debris, wrong or "
|
||
"off-centre labels. Non-fill and stitching correlate with audible defects, so this is a strong "
|
||
"proxy for audio quality without playing the record", "Custom integration of general machine "
|
||
"vision (Keyence or Cognex class); no "
|
||
"vinyl-specific product exists; CNX "
|
||
"would be an early adopter"],
|
||
["2. Press telemetry, every cycle", "Nozzle pressure, mould temperatures, cycle time, cake "
|
||
"weight, yields and drift alerts streamed from the press PLC", "Process drift before it "
|
||
"becomes a defect; the record-level context for every other check", "Proven and deployed "
|
||
"in the industry "
|
||
"(Viryl ADAPT model); "
|
||
"AD12 and Newbilt "
|
||
"Classic expose the "
|
||
"data"],
|
||
["3. Automated audio comparison, sampled", "A needle-drop capture station with automated "
|
||
"analysis: spectral-envelope comparison against the source master, click and pop counting, "
|
||
"noise floor from lead-in silence, channel balance; numeric score and pass/fail to the "
|
||
"database", "Wrong master cut into good-looking grooves, EQ and mastering errors, speed and "
|
||
"pitch problems; the things no camera can see", "Buildable from proven parts "
|
||
"(Stamper Discs' Fonograph "
|
||
"approach, iZotope-class "
|
||
"algorithms); first-of-kind as a "
|
||
"whole"],
|
||
], widths_mm=[32, 48, 55, 35], font_pt=8.5),
|
||
P("**Sampling rule for layer 3:** every test pressing and first-off per stamper, plus pulled "
|
||
"samples densifying as the stamper ages (a stamper lasts roughly 1,000 to 2,000 records; the "
|
||
"industry rule of thumb is a spot-play around every 50th)."),
|
||
H3("The materials lab"),
|
||
P("Every incoming compound lot passes a gate before it reaches a press, and its lot ID follows every "
|
||
"record pressed from it. Per lot, in-house from day one, on benchtop instruments with data "
|
||
"export: certificate of analysis against the agreed specification, moisture (the most common "
|
||
"cause of noisy surfaces), heat stability (PVC degradation releases hydrochloric acid and shows as "
|
||
"discoloration and noise), density, colour and gloss, granulate size and dust. New lots, and "
|
||
"especially new suppliers, are released only by test pressing. As the lab matures, torque "
|
||
"rheometry, DSC and FTIR are added; supplier qualification uses an external lab for K-value, "
|
||
"stabiliser identification (legacy lead rejected) and heavy-metals compliance for export. The "
|
||
"in-house regrind stream has its own contamination gate. This protocol is how Thai and regional "
|
||
"compounds are qualified against the European references."),
|
||
H3("Packaging QC"),
|
||
P("Incoming cartons and sleeves are checked per delivery: dimensions (records must fit without "
|
||
"force; spine width per title), board grammage, print quality against the customer-approved "
|
||
"proof (spectrophotometer Delta E for colour-critical jobs), lamination and seam strength, inner "
|
||
"sleeve scuff risk. At assembly, the runout matrix code is scanned against the jacket barcode and "
|
||
"every unit's barcode is verified. Results go back to Ploy Printing per packaging lot, which is "
|
||
"the practical advantage of a partner ten kilometres away over a supplier ten thousand."),
|
||
|
||
H2("5.4 Efficiency: recover before you generate"),
|
||
P("The pressing machinery is a modest electrical load (32 kVA connected for a full semi-automatic "
|
||
"line). The real energy demand sits in the utilities around it: the steam generator, the 250 kW "
|
||
"cooling system, and, in a tropical climate, the whole-plant air conditioning. Because Newbilt "
|
||
"excludes steam and cooling from its scope, these systems are ours to design, and the plan's "
|
||
"architecture is built on one observation: the steam's job is to heat the moulds and the cooling "
|
||
"water's job is to remove that same heat again. Roughly 98% of the cooling load is heat that the "
|
||
"steam put into the moulds, and the press cooling return leaves at about 60 °C. That warm return "
|
||
"is a premium heat source, and the plant reuses it before generating anything new."),
|
||
T(["Measure", "What it does", "Effect"], [
|
||
["Feedwater heat recovery", "A water-to-water heat pump lifts the 60 °C press cooling return "
|
||
"into boiler feedwater at 90 to 95 °C", "Each kWh does double duty: cuts the boiler's work "
|
||
"and removes load from the chiller. With condensate "
|
||
"return, saves roughly 10 to 15% of steam energy and "
|
||
"shrinks the cooling system"],
|
||
["Condensate return", "Steam condensate goes back to the treated feedwater cycle", "80% "
|
||
"return assumed; less water, less treatment, less fuel"],
|
||
["Waste heat for low-grade consumers", "The label dry oven and the air conditioning's "
|
||
"dehumidification reheat run on recovered press heat", "Displaces fresh electricity in two "
|
||
"continuous loads"],
|
||
["Solar-thermal feedwater preheat", "Flat-plate or evacuated-tube collectors reach 60 to 90 °C "
|
||
"trivially in the Thai sun", "Cheap, proven, stackable with the heat pump"],
|
||
["Steam accumulator", "Presses draw steam in bursts; an accumulator (a Newbilt option) lets a "
|
||
"smaller boiler ride the peaks", "Smaller boiler, steadier firing"],
|
||
["Closed-loop cooling", "Chiller or hybrid tower with plate heat exchanger; no open 'dirty "
|
||
"water' loop as in the reference schematic", "No process water discharged; the largest "
|
||
"water draw (tower evaporation) shrinks with "
|
||
"every kW the heat pump removes"],
|
||
["Regrind loop", "In-house grinder returns trimmings and rejects to the extruder at 20% of "
|
||
"the feed", "Scrap is feedstock, not landfill; ~20% less virgin compound"],
|
||
["One operator per four automatic presses", "Automatic patty, label and cooling-plate "
|
||
"handling", "Labour per record on the automatic half is a fraction of the semi-automatic "
|
||
"line's"],
|
||
], widths_mm=[38, 68, 64], font_pt=8.5),
|
||
P("Two things were checked and ruled out: heat pumps cannot make the final 10 bar / 180 °C steam "
|
||
"(commercial units top out around 120 to 165 °C, and core utility reliability is the wrong place "
|
||
"to pioneer), and ground-source heat exchange does not work in Thailand (the ground sits at "
|
||
"28 to 30 °C, too cold for process heat and warmer than the cooling loop wants). The boiler only "
|
||
"does the final lift, from already-hot feedwater."),
|
||
H3("Renewable energy"),
|
||
KV([
|
||
["Rooftop PV, phase 1", "~247 kWp on the 1,523 m² monopitch roof (425 modules of the current "
|
||
"580 W class) plus ~40 kWp on the parking canopies, ~290 kWp total; "
|
||
"expected yield ~335 to 360 MWh/yr from the roof, ~25 to 35% of mature "
|
||
"two-shift consumption"],
|
||
["Rooftop PV, with phase 2 building", "~498 kWp across both roofs, which removes the need for "
|
||
"ground-mount solar"],
|
||
["Battery", "271 kWh Gobel Power LiFePO4 rack (15 stacked 18 kWh packs, 8,000+ cycles), "
|
||
"USD 40k to 58k listed, 50 to 60 day lead. Peak shaving and ride-through, roughly "
|
||
"two to three hours of the chiller's draw, not off-grid autonomy"],
|
||
["Inverters", "Multiple Deye three-phase hybrid units (30 to 80 kW class), Thai distribution "
|
||
"via Solar Nicolo; Deye is a supported protocol on the Gobel battery management"],
|
||
["Roof design", "Monopitch at 10° falling toward ESE puts the whole roof on one plane at ~98% "
|
||
"of ideal yield; at this latitude orientation barely matters (under 2% "
|
||
"across a wide azimuth swing) and the building stays aligned with the plot. "
|
||
"10° rather than shallower so the rains self-clean burning-season dust"],
|
||
["Open checks", "Battery rack voltage vs the chosen Deye model's window; Gobel safety "
|
||
"certifications (not published); EPC warranty on a mixed-vendor DC bus; "
|
||
"confirm yield against PVGIS before committing"],
|
||
]),
|
||
H3("Steam: the open engineering choice"),
|
||
P("There is no natural gas pipeline in Northern Thailand, so gas means a bulk LPG tank on site and "
|
||
"diesel means a fuel tank with price exposure. The plan keeps two fossil-free routes open. An "
|
||
"**electric boiler** (THB 2.5M to 4.0M installed, Miura or Bangkok Industrial Boilers class) is "
|
||
"fast, clean to permit, and maximises the solar share, at a ~300 kW draw that pushes the grid "
|
||
"connection toward 750 kVA. A **biomass boiler** (THB 4M to 7M, Getabec, Thai-fabricated) burns "
|
||
"wood chips, longan orchard prunings (Lamphun is Thailand's longan heartland and prunings are a "
|
||
"traded fuel), corn cobs and rice husk, roughly 350 to 400 tonnes a year at maturity; it makes "
|
||
"the steam genuinely renewable at the cost of fuel logistics, ash handling and an emissions "
|
||
"stack. The team's own 60 rai of forestry-classified land could supply 80 to 135 tonnes a year "
|
||
"as short-rotation coppice, most of early operations' need, but only after its legal "
|
||
"classification is verified. The staged path is the working assumption: **start electric, "
|
||
"plant the coppice now, add biomass at the automatic-line expansion** when demand and fuel supply "
|
||
"have both matured. The building already has a boiler hall and a fuel store in its utility yard."),
|
||
H3("Water"),
|
||
P("Estimated demand at mature two-shift operation is about 15 m³ per day, called 20 with margin: "
|
||
"cooling tower evaporation and blowdown (over half), boiler makeup, galvanics rinse after "
|
||
"recycling, and domestic use for 25 staff. Source is open (PWA mains or a licensed well) and "
|
||
"drives part of the utilities budget. Storage is a dedicated ~200 m³ fire reserve plus a ~50 m³ "
|
||
"raw-water tank feeding a softener or RO skid. **No process water is discharged:** cooling is a "
|
||
"closed loop, condensate is returned, galvanics rinse water goes through closed-loop treatment "
|
||
"and metal recovery (an evaporator, THB 3M to 8M, with the galvanics line), and solvents are "
|
||
"contained and disposed of as controlled waste. This is a fixed design requirement, not an "
|
||
"aspiration to be traded away during engineering."),
|
||
H3("Climate control as a product"),
|
||
P("The whole plant runs under continuous control: 20 to 26 °C, 35 to 60% relative humidity, and "
|
||
"particulate filtration (F7 to F9 general, HEPA with positive pressure in the cutting room and "
|
||
"galvanics clean room), with sensors logging in every zone. Moisture in PVC compound causes "
|
||
"bubbles, non-fill and surface defects and drives cooling rate, hence flatness and warp; airborne "
|
||
"particulate embeds in the record surface and is the classic source of clicks and pops. Northern "
|
||
"Thailand's burning season (February to April) brings some of the world's worst PM2.5 episodes, "
|
||
"so a plant without filtration would press different records in March than in September. This "
|
||
"is the plant's largest utility line (THB 7.5M to 15M for ~1,500 m², plus THB 1.2M to 3.4M for "
|
||
"the two clean zones) and it is treated here as part of the product, not as overhead. The 35% "
|
||
"humidity floor is aggressive for the tropics and drives desiccant cost; if 45% proves "
|
||
"acceptable, the cost drops materially, and that question is on the RFQ list."),
|
||
CALL("Efficiency in one paragraph, for the investor", "Heat is recovered from the presses before "
|
||
"any fuel is burned; a quarter to a third of electricity comes from the roof at phase 1 and "
|
||
"up to half with the second building; a battery shaves the peaks; cooling water is never "
|
||
"discharged; a fifth of the plastic is reclaimed; and one operator runs four automatic presses. "
|
||
"The same choices cut the energy line in the cost model toward its low end, hedge Thai tariff "
|
||
"rises, and convert into BOI tax value (section 7). They also make the plant's sustainability "
|
||
"story true rather than claimed, which matters to the labels it sells to."),
|
||
|
||
# -------------------------------------------- 6 site and building
|
||
H1("6. Site and building"),
|
||
H2("6.1 Land: a long lease in Lamphun"),
|
||
P("The project's site strategy has changed from purchase to **long-term lease of raw land**, on "
|
||
"which the purpose-built plant is still constructed. This lowers upfront capital by roughly "
|
||
"USD 0.4M to 1.0M (THB 12M to 32M at the 2 to 4 million THB per rai the plan carried for "
|
||
"purchase), removes land from the balance sheet, and matches how most foreign-invested "
|
||
"manufacturing in Thailand actually holds its site. It brings its own conditions, which Thai "
|
||
"counsel will resolve before signature:"),
|
||
B([
|
||
"**Term and registration.** A lease over three years must be registered at the Land Office to "
|
||
"be enforceable; the ordinary maximum is 30 years, and for industrial and commercial use the "
|
||
"Hire of Immovable Property for Commerce and Industry Act allows up to 50 years for qualifying "
|
||
"projects. The plan assumes a registered 30-year lease with a contractual renewal option, and "
|
||
"will test the 50-year route with counsel.",
|
||
"**Building ownership.** The lease must state clearly that the buildings, foundations, tanks "
|
||
"and fixed plant belong to the company for the term, what happens to them at expiry, and that "
|
||
"the company may mortgage or assign them. Without this, financing the building is difficult.",
|
||
"**Lessor's title and encumbrances.** A clean Chanote title, no mortgage that could foreclose "
|
||
"over the tenant, and consent from any co-owners. A lease of Sor Por Kor or forestry-classified "
|
||
"land is not acceptable.",
|
||
"**Zoning and factory permission.** The candidate parcel in Mueang Chi, Lamphun is agricultural "
|
||
"land whose zoning for factory use is unverified; this gates everything and is the cheapest "
|
||
"schedule insurance available. The Northern Region Industrial Estate in Lamphun (IEAT) is the "
|
||
"fallback: leased plots, licensing handled by the estate, and shared central effluent treatment "
|
||
"that eases the galvanics permitting.",
|
||
"**BOI interaction.** BOI's land-ownership privilege for foreign-held promoted companies is "
|
||
"simply not used; leasing does not affect the promotion.",
|
||
"**Rent.** Not yet negotiated. The plan carries THB 0.3M to 1.0M per year (USD 9k to 30k) as "
|
||
"an estimate for 5 to 8 rai of agricultural land converted to industrial use in the Lamphun "
|
||
"valley; IEAT plots run higher. The negotiated figure replaces this.",
|
||
]),
|
||
P("Land requirements are unchanged: ~4 rai minimum, 6 to 8 rai comfortable with expansion, truck "
|
||
"access and turning, parking, the outdoor cooling tower, a separated battery enclosure, and a "
|
||
"500 to 1,000 kVA medium-voltage connection from PEA."),
|
||
|
||
H2("6.2 The building"),
|
||
IMG("renders/site-plan.png", 120, "Figure 2. Site plan on the candidate Mueang Chi parcel: phase 1 "
|
||
"main building, detached utility yard, fire and raw water "
|
||
"tanks, parking canopies, and the phase 2 building footprint. "
|
||
"Source: parametric model, project repository."),
|
||
P("The phase 1 building is a single-storey steel portal frame of **60 × 25 m (1,500 m²)** with a "
|
||
"10° monopitch roof carrying the PV array, low eave 7.0 m, high side ~11.4 m. The floor is a "
|
||
"200 mm slab rated 30 kN/m² (3 t/m², the standard industrial class and what the presses and "
|
||
"racking need) raised 1.2 m above ground so that two sealed loading docks work at trailer height "
|
||
"and the docked trailer acts as the airlock. The envelope is insulated PIR sandwich panel "
|
||
"(100 mm roof, 75 mm walls) on a 2.5 m masonry dado, taped and gasketed, because the building is "
|
||
"air-conditioned and must be airtight against smoke-season particulate; mineral-wool panels "
|
||
"where fire compartmentation (EI 60 or 120) or acoustics require them."),
|
||
T(["Zone", "Area"], [
|
||
["Semi-automatic press hall (Newbilt Duplex specification)", "~200 m²"],
|
||
["Automatic press zone", "~100 to 150 m²"],
|
||
["Galvanics clean room, water treatment, chemical storage", "~80 to 150 m²"],
|
||
["Mastering and cutting room", "~40 to 60 m²"],
|
||
["Stamper preparation", "~30 m²"],
|
||
["Cassette duplication and CD-R duplication (new)", "~60 to 100 m²"],
|
||
["Packaging, assembly and finished-goods warehouse", "~300 to 500 m²"],
|
||
["Utility rooms inside (compressor, electrical, IT)", "~50 to 100 m²"],
|
||
["Offices, QC and listening room, archive, entrance", "~150 to 200 m²"],
|
||
["Circulation, walls, miscellaneous", "~150 to 250 m²"],
|
||
["**Total under roof**", "**~1,200 to 1,700 m²**, against 1,500 m² built"],
|
||
], widths_mm=[110, 60],
|
||
caption="The boiler hall (66 m²), biomass fuel store (42 m²), chiller room (60 m²) and cooling "
|
||
"tower pad sit in a detached utility yard, which frees the main floor for production and "
|
||
"keeps the boiler in its own room as Thai regulations require."),
|
||
P("Site works include a ~444 m perimeter wall, one 10 m sliding gate with a guard house, 4,387 m² "
|
||
"of paving in two classes (heavy-duty for trucks, general for parking and yard), roofed parking "
|
||
"for 10 cars and 30 scooters with ~40 kWp of PV on the canopies, foundations for a 9 m fire "
|
||
"water tank and a 5 m raw-water tank, a fire ring main and hydrants, stormwater drainage "
|
||
"(66% of the plot becomes sealed, so a detention pond may be required for the permit), and "
|
||
"domestic sanitation."),
|
||
P("**A second building is expansion, not a gap.** The whole zone table fits inside the phase 1 "
|
||
"building. A 45 × 38 m (1,710 m²) phase 2 building fits the plot's narrowing southern end with a "
|
||
"two-bay sawtooth roof carrying ~251 kWp, a 20 m yard between the two for fire separation and "
|
||
"shared loading; total coverage stays at 39% of the deed area. It is where a CD replication line "
|
||
"would go if that option is chosen (section 4.9), or where finished goods move to free production "
|
||
"floor."),
|
||
H3("What the building costs, and what is not known"),
|
||
P("Building and civil works are estimated at **USD 650k to 1.1M** (THB 21M to 36M) at 12,000 to "
|
||
"20,000 THB/m² for Thai pre-engineered steel construction to the insulated-panel specification, "
|
||
"plus ~20% site works. A budget-level price request with quantities from the parametric model is "
|
||
"ready to send to contractors. The single largest unknown is the ground: the parcel is likely "
|
||
"soft former paddy, and a piled slab can add several hundred to 1,000+ THB/m² across the "
|
||
"building, 4,387 m² of paving and a 1,711 m³ fill platform. A soil boring test (THB 30k to 50k) "
|
||
"comes before any real number and is in the phase 0 budget."),
|
||
IMG("renders/aerial-southwest.png", 150, "Figure 3. Massing render from the south-west: phase 1 "
|
||
"building with rooftop PV, utility yard, tanks and parking "
|
||
"canopies. Source: parametric model."),
|
||
|
||
H2("6.3 Safety, security and the irreplaceable"),
|
||
P("Worker safety is a founding priority on equal footing with the environmental commitments. The "
|
||
"pressing line combines hydraulics at ~180 bar, saturated steam at 10 bar / 180 °C and hot PVC; "
|
||
"the galvanics room handles silver nitrate and nickel salts. The plan provides vendor-led "
|
||
"commissioning training extending into an in-house program, mandatory PPE per area, controlled "
|
||
"access and decontamination for the clean rooms, eyewash and emergency shower at the plating "
|
||
"line, a licensed boiler operator, and fume-extraction interlocks (no extraction, no plating)."),
|
||
P("Physical security is zoned: production, galvanics, chemical storage, the master and stamper "
|
||
"archive, IT, and shipping each get badge or biometric access with logs; CCTV at entrances, "
|
||
"perimeter, dock, production, chemicals and archive under a PDPA-compliant retention policy. Two "
|
||
"things are irreplaceable and get their own protection: **the metal archive** (a destroyed father "
|
||
"means re-cutting and re-plating a release; fire-rated room, climate control, access logging, "
|
||
"clean-agent gas suppression because sprinkler water would destroy lacquers and paper and corrode "
|
||
"the metal) and **client audio** (pre-release music is a leak target; isolated encrypted storage, "
|
||
"need-to-know access, and a written policy the sales team can show labels)."),
|
||
P("Fire suppression is zoned, not full-building gas: clean agent only in small sealed high-value "
|
||
"rooms (archive, IT, switchrooms, control cabinets), water mist or sprinklers in production and "
|
||
"the carton-heavy warehouse, detection and containment rather than suppression for the battery "
|
||
"enclosure. The site carries its own ~200 m³ fire reserve and pump set because mains flow in "
|
||
"Mueang Chi cannot be assumed. The property insurer is involved before the design is fixed."),
|
||
|
||
# ----------------------------------------------------- 7 BOI
|
||
H1("7. Regulatory: BOI promotion and licences"),
|
||
P("The project will apply for promotion by the Thailand Board of Investment. In BOI terms vinyl "
|
||
"pressing is basic plastic consumer-goods manufacturing (incentive Group B): no corporate income "
|
||
"tax holiday on the core activity, but the full non-tax package and machinery duty exemption. The "
|
||
"tax value is engineered on top through measures where this project happens to be strong, so the "
|
||
"application is pitched on solar, automation and technology content, not on pressing plastic "
|
||
"discs."),
|
||
T(["What BOI gives", "Why it matters here"], [
|
||
["Machinery import duty exemption", "Almost the entire equipment list is imported (Germany, "
|
||
"Sweden, USA, UK, Japan). Significant across every equipment block."],
|
||
["100% foreign ownership and land privileges", "Overrides Foreign Business Act restrictions "
|
||
"for the promoted activity. Land ownership privilege is unused under the lease strategy."],
|
||
["Visas and work permits via One Stop Service", "Foreign commissioning engineers and the "
|
||
"technical consultant, without the four-Thai-employees-per-permit rule."],
|
||
["Raw material duty relief", "Exemption for export production; up to 90% reduction for "
|
||
"domestic sales. Relevant for imported PVC compound until a Thai source is qualified."],
|
||
["Solar and battery measure (alternative-energy, 2025)", "CIT exemption based on the solar "
|
||
"investment; PV modules, inverters, battery and mounting explicitly eligible. The planned "
|
||
"installation converts directly into tax-exemption headroom."],
|
||
["Smart and Sustainable Industry upgrade measure", "Rewards automation, smart machinery and "
|
||
"energy efficiency, typically 3 years of CIT exemption capped around 50% of the qualifying "
|
||
"spend. The automatic presses, inline inspection, metrology and heat recovery are the natural "
|
||
"fit."],
|
||
["R&D merit", "At least 1% of revenue in Thai R&D adds 1 to 3 exemption years. Galvanics "
|
||
"process development, recycled-PVC work and the audio-QC system could be framed as "
|
||
"qualifying development."],
|
||
], widths_mm=[58, 112]),
|
||
P("**Requirements:** minimum THB 1M investment excluding land and working capital (cleared by the "
|
||
"first press line alone); debt-to-equity no higher than 3:1 for the life of the privileges, which "
|
||
"shapes the financing mix; modern machinery and process; progress reporting. BOI promotion does "
|
||
"not replace the factory licence (Ror.Ngor. 4), boiler registration, hazardous-substance "
|
||
"registration for the plating chemistry, or wastewater permitting. The galvanics effluent is the "
|
||
"most likely regulatory friction point regardless of BOI, which is one argument for the "
|
||
"industrial estate's shared treatment."),
|
||
P("**Process:** file via the e-Investment system and present at an analyst meeting; decision in "
|
||
"about 40 working days for projects under THB 200M, roughly 4 to 6 months end to end to the "
|
||
"certificate; incorporate the company under it; import machinery within a window commonly 30 "
|
||
"months from issuance; reach full operation by about 36 months. The Northern Economic Corridor "
|
||
"(Chiang Mai, Lamphun, Lampang) is promoted as a creative-economy base, which a music "
|
||
"manufacturing story fits; current area add-ons must be confirmed with BOI directly."),
|
||
CALL("Two things to settle before filing", [
|
||
"**Scope.** Cassette duplication and CD-R duplication should be in the application from the "
|
||
"start. CD replication is a separate activity code and cannot be added casually afterwards; "
|
||
"the investor's decision on section 4.9 is needed before the filing date.",
|
||
"**Sequencing.** The plan's rule is that no machinery purchase order precedes the certificate, "
|
||
"because duty exemption is not retroactive. But the exemption attaches at importation, not "
|
||
"at contract signature. If a press can be ordered with a deposit while the application is in "
|
||
"review, provided it clears customs after issuance, the launch pulls forward by 6 to 9 "
|
||
"months. This is the first question for the BOI consultant and the only item in the plan "
|
||
"worth half a year.",
|
||
]),
|
||
P("Keep any future label, content or retail arm in a separate entity: media and service activities "
|
||
"carry different, sometimes Thai-ownership, conditions and would muddy a clean manufacturing "
|
||
"application. Poy Records as a label brand is therefore a separate question from the plant."),
|
||
]
|